คำถามติดแท็ก sqlite

SQLite เป็นไลบรารีซอฟต์แวร์ที่ใช้เอ็นจินฐานข้อมูล SQL แบบทรานแซคชันที่มีอยู่ในตัวเองแบบไร้เซิร์ฟเวอร์

5
ค่า DATETIME ทำงานอย่างไรใน SQLite
ฉันกำลังสร้างแอพ Android และต้องการบันทึกวันที่ / เวลาของบันทึกการสร้าง อย่างไรก็ตามเอกสาร SQLite กล่าวว่า "SQLite ไม่มีคลาสพื้นที่เก็บข้อมูลที่ตั้งไว้สำหรับจัดเก็บวันที่และ / หรือเวลา" และ "สามารถจัดเก็บวันที่และเวลาเป็นค่า TEXT, REAL หรือ INTEGER ได้" มีเหตุผลทางเทคนิคที่จะใช้ประเภทหนึ่งกับอีกประเภทหนึ่งหรือไม่? และคอลัมน์เดียวสามารถจัดเก็บวันที่ในรูปแบบสามรูปแบบจากแถวหนึ่งไปอีกแถวได้หรือไม่? ฉันจะต้องเปรียบเทียบวันที่ในภายหลัง ตัวอย่างเช่นในแอปของฉันฉันจะแสดงบันทึกทั้งหมดที่สร้างขึ้นระหว่างวันที่ A จนถึงวันที่ B ฉันกังวลว่าการไม่มีคอลัมน์ DATETIME ที่แท้จริงอาจทำให้การเปรียบเทียบทำได้ยาก
111 sqlite  datetime 


5
สร้างฐานข้อมูลอัตโนมัติใน Entity Framework Core
แอปพลิเคชันของฉันที่ถูกย้ายไปยัง. NET core จะใช้ EF Core ใหม่กับ SQLite ฉันต้องการสร้างฐานข้อมูลและโครงสร้างตารางโดยอัตโนมัติเมื่อมีการเรียกใช้แอปครั้งแรก ตามเอกสารหลักของ EF สิ่งนี้ทำได้โดยใช้คำสั่งด้วยตนเอง dotnet ef migrations add MyFirstMigration dotnet ef database update อย่างไรก็ตามฉันไม่ต้องการให้ผู้ใช้ป้อนคำสั่งเหล่านี้และต้องการให้แอปสร้างและตั้งค่าฐานข้อมูลสำหรับการใช้งานครั้งแรก สำหรับ EF 6 มีฟังก์ชันเช่น Database.SetInitializer(new CreateDatabaseIfNotExists<MyContext>()); แต่ใน EF Core สิ่งเหล่านี้ดูเหมือนจะไม่มีอยู่จริง ฉันไม่พบตัวอย่างหรือเอกสารใด ๆ เกี่ยวกับสิ่งที่เทียบเท่าสำหรับแกน EF และไม่มีการกล่าวถึงในรายการคุณสมบัติที่ขาดหายไปในเอกสารหลักของ EF ฉันมีการตั้งค่าคลาสโมเดลอยู่แล้วดังนั้นฉันจึงสามารถเขียนโค้ดเพื่อเริ่มต้นฐานข้อมูลตามโมเดลได้ แต่จะง่ายกว่าถ้าเฟรมเวิร์กทำสิ่งนี้โดยอัตโนมัติ ฉันไม่ต้องการสร้างโมเดลหรือย้ายข้อมูลโดยอัตโนมัติเพียงแค่สร้างโครงสร้างตารางในฐานข้อมูลใหม่ ฉันพลาดอะไรบางอย่างที่นี่หรือฟังก์ชันสร้างตารางอัตโนมัติหายไปในแกน EF หรือไม่

10
จะแทรกระเบียน SQLite โดยตั้งวันที่และเวลาเป็น 'ตอนนี้' ในแอปพลิเคชัน Android ได้อย่างไร
สมมติว่าเรามีตารางที่สร้างขึ้นเป็น: create table notes (_id integer primary key autoincrement, created_date date) ในการแทรกบันทึกฉันจะใช้ ContentValues initialValues = new ContentValues(); initialValues.put("date_created", ""); long rowId = mDb.insert(DATABASE_TABLE, null, initialValues); แต่จะตั้งค่าคอลัมน์ date_created เป็นตอนนี้ได้อย่างไร? เพื่อให้ชัดเจน initialValues.put("date_created", "datetime('now')"); ไม่ใช่ทางออกที่ถูกต้อง เพียงแค่ตั้งค่าคอลัมน์เป็นข้อความ "datetime ('now')"

10
โปรแกรมจำลอง Android เก็บฐานข้อมูล SQLite ไว้ที่ไหน
ฉันกำลังทำงานกับแอปพลิเคชัน Android ที่เก็บข้อมูลในฐานข้อมูล SQLite คำถามของฉันคือไฟล์ฐานข้อมูลนี้จะถูกเก็บไว้ที่ใดในระบบไฟล์เมื่อคุณใช้โปรแกรมจำลอง ฉันเห็นว่ามันถูกเก็บไว้ใน /data/data/package_name/databases แต่ฉันจำเป็นต้องรู้ว่าฮาร์ดไดรฟ์ของเครื่องในเครื่องของฉันอยู่ที่ไหน ฐานข้อมูลยังคงอยู่ในการรันโปรแกรมจำลองหลายครั้งแม้ว่าจะปิดเครื่องไปแล้วก็ตามดังนั้นจึงไม่สามารถอยู่ใน RAM ได้ ...
109 android  sqlite 

6
ฉันจะแทรกค่าวันที่และเวลาลงในฐานข้อมูล SQLite ได้อย่างไร
ฉันกำลังพยายามแทรกค่าวันที่และเวลาลงในฐานข้อมูลSQLite ดูเหมือนจะประสบความสำเร็จ แต่เมื่อฉันพยายามดึงค่ามีข้อผิดพลาด: <ไม่สามารถอ่านข้อมูล> คำสั่ง SQL คือ: create table myTable (name varchar(25), myDate DATETIME) insert into myTable (name,mydate) Values ('fred','jan 1 2009 13:22:15')
109 sql  datetime  sqlite 

4
ฉันจะเพิ่มโมดูล sqlite3 ใน Python ได้อย่างไร
ใครช่วยบอกวิธีติดตั้งโมดูล sqlite3 ควบคู่กับ Python เวอร์ชันล่าสุดได้ไหม ฉันใช้ Macbook และในบรรทัดคำสั่งฉันลอง: pip install sqlite แต่มีข้อผิดพลาดปรากฏขึ้น
109 python  sqlite  pip 

9
มีการเพิ่มอัตโนมัติใน sqlite หรือไม่?
ฉันพยายามที่จะสร้างตารางที่มีอัตโนมัติที่เพิ่มขึ้นprimary keyในSqlite3 ฉันไม่แน่ใจว่าเป็นไปได้จริงหรือไม่ แต่ฉันหวังว่าจะต้องกำหนดช่องอื่นเท่านั้น ตัวอย่างเช่น: CREATE TABLE people (id integer primary key auto increment, first_name varchar(20), last_name varchar(20)); จากนั้นเมื่อฉันเพิ่มมูลค่าฉันหวังว่าจะต้องทำเท่านั้น: INSERT INTO people VALUES ("John", "Smith"); เป็นไปได้หรือไม่? ฉันกำลังทำงานsqlite3ภายใต้cygwinWindows 7
109 sql  sqlite  cygwin 

14
เปลี่ยนโหมดฐานข้อมูล SQLite เป็นอ่าน - เขียน
ฉันจะเปลี่ยนฐานข้อมูล SQLite จากอ่านอย่างเดียวเป็นอ่านเขียนได้อย่างไร เมื่อฉันดำเนินการคำสั่งอัพเดตฉันมักจะได้รับ: ข้อผิดพลาด SQL: พยายามเขียนฐานข้อมูลแบบอ่านอย่างเดียว ไฟล์ SQLite เป็นไฟล์ที่เขียนได้บนระบบไฟล์
108 sqlite 

13
การนำเข้าไฟล์ CSV ไปยังตารางฐานข้อมูล sqlite3 โดยใช้ Python
ฉันมีไฟล์ CSV และต้องการนำเข้าไฟล์จำนวนมากไปยังฐานข้อมูล sqlite3 โดยใช้ Python คำสั่งคือ ".import ..... " แต่ดูเหมือนว่าจะไม่สามารถทำงานได้เช่นนี้ ใครช่วยยกตัวอย่างวิธีทำใน sqlite3 ให้หน่อยได้ไหม ฉันใช้ windows ในกรณีนี้ ขอบคุณ
106 python  database  csv  sqlite 

9
ห้องสมุดความคงอยู่ของห้อง Android: อัปเดต
ไลบรารีความคงอยู่ของ Room ของ Android มีคำอธิบายประกอบ @Insert และ @Update ที่ใช้กับวัตถุหรือคอลเล็กชัน อย่างไรก็ตามฉันมีกรณีการใช้งาน (การแจ้งเตือนแบบพุชที่มีโมเดล) ที่ต้องใช้ UPSERT เนื่องจากข้อมูลอาจมีหรือไม่มีอยู่ในฐานข้อมูล Sqlite ไม่มีการเพิ่มขึ้นโดยกำเนิดและวิธีแก้ปัญหาจะอธิบายไว้ในคำถาม SOนี้ จากวิธีแก้ปัญหาที่นั่นเราจะนำไปใช้กับ Room ได้อย่างไร เพื่อให้เจาะจงมากขึ้นฉันจะใช้การแทรกหรือการอัปเดตในห้องที่ไม่ทำลายข้อ จำกัด ของคีย์แปลกปลอมได้อย่างไร การใช้การแทรกกับ onConflict = REPLACE จะทำให้ onDelete สำหรับคีย์ต่างประเทศใด ๆ ในแถวนั้นถูกเรียก ในกรณีของฉัน onDelete ทำให้เกิดการเรียงซ้อนและการใส่แถวใหม่จะทำให้แถวในตารางอื่นที่มีคีย์นอกนั้นถูกลบ นี่ไม่ใช่พฤติกรรมที่ตั้งใจไว้

17
ฉันจะใช้ regex ในแบบสอบถาม SQLite ได้อย่างไร
ฉันต้องการใช้นิพจน์ทั่วไปใน sqlite แต่ฉันไม่รู้วิธี ตารางของฉันมีคอลัมน์ที่มีสตริงดังนี้: "3,12,13,14,19,28,32" ตอนนี้ถ้าฉันพิมพ์ "โดยที่ x LIKE '3'" ฉันจะได้แถวที่มีค่าเช่น 13 หรือ 32 ด้วย แต่ฉันต้องการรับเฉพาะแถวที่มีค่า 3 ในสตริงนั้นเท่านั้น ไม่มีใครรู้วิธีแก้ปัญหานี้?

3
จะสร้างประเภท ENUM ใน SQLite ได้อย่างไร?
ฉันต้องการแปลงตารางจาก MySQL เป็น SQLite แต่ฉันไม่สามารถหาวิธีแปลงฟิลด์ enum ได้เนื่องจากฉันไม่พบENUMประเภทใน SQLite ฟิลด์ดังกล่าวอยู่pTypeในตารางต่อไปนี้: CREATE TABLE `prices` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `pName` VARCHAR(100) NOT NULL DEFAULT '', `pType` ENUM('M','R','H') NOT NULL DEFAULT 'M', `pField` VARCHAR(50) NULL DEFAULT NULL, `pFieldExt` VARCHAR(50) NULL DEFAULT NULL, `cmp_id` INT(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) …
105 sqlite  types  enums 

7
SQLite UPSERT / UPDATE หรือ INSERT
ฉันจำเป็นต้องทำการ UPSERT / INSERT หรือ UPDATE กับฐานข้อมูล SQLite มีคำสั่ง INSERT OR REPLACE ซึ่งในหลาย ๆ กรณีอาจมีประโยชน์ แต่ถ้าคุณต้องการเก็บ id ของคุณด้วยการเพิ่มอัตโนมัติเนื่องจากมีคีย์ต่างประเทศจะใช้ไม่ได้เนื่องจากจะลบแถวสร้างใหม่และส่งผลให้แถวใหม่นี้มี ID ใหม่ นี่จะเป็นตาราง: ผู้เล่น - (คีย์หลักบน id, user_name unique) | id | user_name | age | ------------------------------ | 1982 | johnny | 23 | | 1983 | steven | 29 | | …
105 database  sqlite  upsert 

5
เรียกใช้สคริปต์ SQLite
ฉันเริ่ม sqlite3 เวอร์ชัน 3.7.7, unix 11.4.2 โดยใช้คำสั่งนี้: sqlite3 auction.db โดยที่ยังไม่ได้สร้างการประมูล.db sqlite> auction.db < create.sql; ทำให้ฉันมีข้อผิดพลาดนี้: near "auction": syntax error ฉันจะเรียกใช้สคริปต์ได้อย่างไร
105 sqlite 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.