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

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

10
SQLite Query ใน Android เพื่อนับแถว
ฉันกำลังพยายามสร้างแบบฟอร์มการเข้าสู่ระบบแบบธรรมดาโดยที่ฉันเปรียบเทียบ ID ล็อกอินและรหัสผ่านที่ป้อนที่หน้าจอล็อกอินกับที่เก็บไว้ในฐานข้อมูล ฉันใช้แบบสอบถามต่อไปนี้: final String DATABASE_COMPARE = "select count(*) from users where uname=" + loginname + "and pwd=" + loginpass + ");" ; ปัญหาคือฉันไม่ทราบว่าฉันจะดำเนินการค้นหาข้างต้นและจัดเก็บจำนวนที่ส่งคืนได้อย่างไร นี่คือลักษณะของตารางฐานข้อมูล (ฉันสับสนในการสร้างฐานข้อมูลโดยใช้วิธี execSQl) private static final String DATABASE_CREATE = "create table users (_id integer autoincrement, " + "name text not null, uname primary key text …
92 android  sqlite  count 

15
วิธีเปิดใช้งาน sqlite3 สำหรับ php
ฉันพยายามติดตั้ง sqlite3 สำหรับ PHP ใน Ubuntu ฉันติดตั้งapt-get php5-sqlite3และแก้ไขphp.iniเพื่อรวมส่วนขยาย sqlite3 เมื่อฉันวิ่งphpinfo();ฉันจะได้รับ SQLITE3 SQLite3 support enabled sqlite3 library version 3.4.2 ดังที่แสดงด้านบนsqlite3ถูกเปิดใช้งาน อย่างไรก็ตามฉันได้รับ "Class SQLite3 not found" เมื่อฉันใช้ new SQLite3("database");
92 php  sqlite 

5
ฐานข้อมูล Android SQLite: การแทรกช้า
ฉันต้องการแยกวิเคราะห์ไฟล์ XML ที่ค่อนข้างใหญ่ (แตกต่างกันไปประมาณหนึ่งร้อยกิโลไบต์และหลายร้อยกิโลไบต์) ซึ่งฉันใช้Xml#parse(String, ContentHandler)อยู่ ฉันกำลังทดสอบกับไฟล์ 152KB ในระหว่างการแยกฉันยังใส่ข้อมูลในฐานข้อมูล SQLite getWritableDatabase().insert(TABLE_NAME, "_id", values)ใช้สายคล้ายกับต่อไปนี้: ทั้งหมดนี้ใช้เวลาประมาณ 80 วินาทีสำหรับไฟล์ทดสอบ 152KB (ซึ่งมาพร้อมกับการแทรกแถวประมาณ 200 แถว) เมื่อฉันแสดงความคิดเห็นในคำสั่งแทรกทั้งหมด (แต่ปล่อยไว้อย่างอื่นเช่นสร้างContentValuesเป็นต้น) ไฟล์เดียวกันจะใช้เวลาเพียง 23 วินาที เป็นเรื่องปกติหรือไม่ที่การดำเนินการฐานข้อมูลจะมีค่าใช้จ่ายสูงขนาดนี้? ฉันสามารถทำอะไรเกี่ยวกับเรื่องนั้นได้หรือไม่?

6
SQLite เทียบเท่ากับ ISNULL (), NVL (), IFNULL () หรือ COALESCE ()
ฉันต้องการหลีกเลี่ยงการตรวจสอบจำนวนมากดังต่อไปนี้ในรหัสของฉัน: myObj.someStringField = rdr.IsDBNull(someOrdinal) ? string.Empty : rdr.GetString(someOrdinal); ฉันคิดว่าฉันสามารถให้แบบสอบถามของฉันดูแลค่าว่างได้โดยทำสิ่งนี้: SELECT myField1, [isnull](myField1, '') FROM myTable1 WHERE myField1 = someCondition ฉันใช้ SQLite และดูเหมือนว่าจะไม่รู้จักisnullฟังก์ชันนี้ ฉันได้พยายามยังคนเทียบเท่าบางส่วนได้รับการยอมรับในฐานข้อมูลอื่น ๆ ( NVL(), IFNULL()และCOALESCE()) แต่ SQLite ดูเหมือนจะไม่รับรู้ใด ๆ ของพวกเขา ใครมีคำแนะนำหรือรู้วิธีที่ดีกว่านี้ น่าเสียดายที่ฐานข้อมูลไม่มีค่าเริ่มต้นสำหรับทุกฟิลด์ นอกจากนี้ฉันจำเป็นต้องใช้บางส่วนLEFT JOINในบางกรณีซึ่งบางฟิลด์ที่ส่งคืนจะเป็นโมฆะเนื่องจากไม่มีระเบียนที่ตรงกันในLEFT JOINตาราง
92 .net  sqlite  dbnull 

3
การลบแถวที่ซ้ำกันออกจากฐานข้อมูล sqlite
ฉันมีตารางขนาดใหญ่ - 36 ล้านแถว - ใน SQLite3 ในตารางขนาดใหญ่นี้มีสองคอลัมน์: hash - ข้อความ d - จริง บางแถวซ้ำกัน นั่นคือทั้งสองhashและdมีค่าเหมือนกัน หากแฮชสองอันเหมือนกันค่าของd. อย่างไรก็ตามสองตัวที่เหมือนกันdไม่ได้หมายความว่าเหมือนกันสองhashตัว ฉันต้องการลบแถวที่ซ้ำกัน ฉันไม่มีคอลัมน์คีย์หลัก วิธีที่เร็วที่สุดในการทำคืออะไร?
92 sql  database  sqlite 

21
ข้อมูลหลักตำแหน่งไฟล์ Sqlite
โดยปกติไฟล์เก็บ sqlite สำหรับแอปข้อมูลหลักจะอยู่ใน ไลบรารี> การสนับสนุนแอปพลิเคชัน> iPhone Simulator> 7.1 (หรือเวอร์ชันใดก็ตามที่คุณใช้)> แอปพลิเคชัน> (โฟลเดอร์ใดก็ตามที่มีแอปของคุณ)> เอกสาร แต่ฉันไม่พบใน IOS 8 ฉันคิดว่าพวกเขาจะเพิ่มโฟลเดอร์ 8.0 ภายในโฟลเดอร์ iPhone Simulator แต่ไม่มีอยู่ มีใครสามารถค้นหาได้หรือไม่

2
ฉันจะอัปเดตขณะเข้าร่วมตารางบน SQLite ได้อย่างไร
ฉันเหนื่อย : UPDATE closure JOIN item ON ( item_id = id ) SET checked = 0 WHERE ancestor_id = 1 และ: UPDATE closure, item SET checked = 0 WHERE ancestor_id = 1 AND item_id = id ทั้งสองใช้งานได้กับ MySQL แต่สิ่งเหล่านี้ทำให้ฉันมีข้อผิดพลาดทางไวยากรณ์ใน SQLite ฉันจะทำให้ UPDATE / JOIN นี้ทำงานกับ SQLite เวอร์ชัน 3.5.9 ได้อย่างไร

8
การเปิดไฟล์ฐานข้อมูลจากภายในเชลล์บรรทัดคำสั่ง SQLite
ฉันใช้SQLite บรรทัดคำสั่งเชลล์ ตามที่บันทึกไว้ฉันสามารถเปิดฐานข้อมูลได้โดยส่งเป็นอาร์กิวเมนต์ให้กับไฟล์ปฏิบัติการ: sqlite3 data.db ฉันไม่สามารถหาวิธีเปิดไฟล์ฐานข้อมูลจากภายในเครื่องมือได้หลังจากเรียกใช้โดยไม่ได้ส่งไฟล์เป็นอาร์กิวเมนต์บรรทัดคำสั่ง (ถ้าฉันพูดให้ดับเบิลคลิก sqlite3.exe ใน Windows) คำสั่งภายในเครื่องมือเชลล์ SQLite เพื่อระบุไฟล์ฐานข้อมูลคืออะไร?
92 sqlite 

14
แก้ไขตารางเพิ่มคอลัมน์หากไม่มีอยู่ใน SQLite
เมื่อเร็ว ๆ นี้เราจำเป็นต้องเพิ่มคอลัมน์ลงในตารางฐานข้อมูล SQLite ที่มีอยู่ของเรา ซึ่งสามารถทำได้ด้วยALTER TABLE ADD COLUMN. แน่นอนว่าหากตารางได้รับการเปลี่ยนแปลงแล้วเราต้องการที่จะปล่อยให้มันอยู่คนเดียว ขออภัย SQLite ไม่สนับสนุนIF NOT EXISTSอนุประโยคบนALTER TABLEข้อบน วิธีแก้ปัญหาปัจจุบันของเราคือดำเนินการคำสั่ง ALTER TABLE และละเว้นข้อผิดพลาด "ชื่อคอลัมน์ที่ซ้ำกัน" เช่นเดียวกับตัวอย่าง Python นี้ (แต่ใน C ++) อย่างไรก็ตามแนวทางปกติของเราในการตั้งค่าสกีมาฐานข้อมูลคือการมีสคริปต์. sql ที่มีCREATE TABLE IF NOT EXISTSและCREATE INDEX IF NOT EXISTSคำสั่งซึ่งสามารถดำเนินการได้โดยใช้sqlite3_execหรือsqlite3เครื่องมือบรรทัดคำสั่ง เราไม่สามารถใส่ALTER TABLEไฟล์สคริปต์เหล่านี้ได้เนื่องจากหากคำสั่งนั้นล้มเหลวจะไม่มีการดำเนินการใด ๆ หลังจากนั้น ฉันต้องการกำหนดตารางในที่เดียวและไม่แยกระหว่างไฟล์. sql และ. cpp มีวิธีการเขียนวิธีแก้ปัญหาALTER TABLE ADD COLUMN …

6
Android SQLite: Update Statement
ฉันต้องการใช้ SQLite ในแอปพลิเคชันของฉัน ฉันทำตามบทช่วยสอนนี้ .. การสร้างและใช้ฐานข้อมูลใน Android one ทุกอย่างทำงานได้ดี ฉันแทรก 1 แถวกับ 5 คอลัมน์ ตอนนี้ฉันต้องการอัปเดตค่า 1 คอลัมน์เท่านั้นและอื่น ๆ จะยังคงเหมือนเดิม มีวิธีการอัปเดตวิธีหนึ่งในบทช่วยสอน แต่ต้องการพารามิเตอร์ทั้งหมดอย่างไรก็ตามฉันต้องการอัปเดตเพียงคอลัมน์เดียว
91 android  sql  sqlite 

10
ข้อ จำกัด ของคีย์ต่างประเทศใน Android โดยใช้ SQLite? บนลบน้ำตก
ฉันมีสองตาราง: แทร็กและจุดอ้างอิงแทร็กสามารถมีจุดอ้างอิงได้หลายจุด แต่เวย์พอยต์ถูกกำหนดให้กับแทร็ก 1 แทร็กเท่านั้น ในตารางชี้ทางฉันมีคอลัมน์ชื่อ "trackidfk" ซึ่งแทรก track_ID เมื่อสร้างแทร็กแล้วอย่างไรก็ตามฉันไม่ได้ตั้งค่าข้อ จำกัด Foreign Key ในคอลัมน์นี้ เมื่อฉันลบแทร็กฉันต้องการลบจุดอ้างอิงที่กำหนดเป็นไปได้หรือไม่? ฉันอ่านเกี่ยวกับการใช้ทริกเกอร์ แต่ไม่คิดว่าแอนดรอยด์รองรับ ในการสร้างตารางจุดอ้างอิง: public void onCreate(SQLiteDatabase db) { db.execSQL( "CREATE TABLE " + TABLE_NAME + " (" + _ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + LONGITUDE + " INTEGER," + LATITUDE + " …

2
วิธีรับแถวแรก / บนสุดของตารางใน Sqlite ผ่าน Sql Query
ฉันต้องการดึงข้อมูลแถวแรก / บนสุดของตารางในฐานข้อมูล Sqlite แต่โปรแกรมของฉันส่ง SQLException "Sqlite Syntax Error: Syntax error ใกล้ '1'" สำหรับข้อความค้นหาที่ฉันใช้: SELECT TOP 1 * FROM SAMPLE_TABLE ฉันเดาว่าเป็นไวยากรณ์โดยเฉพาะสำหรับ MS SQL SERVER และ MS ACCESS ตอนนี้ฉันใช้. SELECT * FROM SAMPLE_TABLE LIMIT 1 ทางออกที่ดีที่สุดสำหรับปัญหานี้คืออะไร?
91 sql  sqlite 

10
จะใช้โมดูล sqlite3 กับอิเล็กตรอนได้อย่างไร?
ฉันต้องการพัฒนาแอพเดสก์ท็อปโดยใช้อิเล็กตรอนที่ใช้แพ็คเกจ sqlite3 ที่ติดตั้งผ่าน npm ด้วยคำสั่ง npm install --save sqlite3 แต่ให้ข้อผิดพลาดต่อไปนี้ในคอนโซลเบราว์เซอร์อิเล็กตรอน Uncaught Error: Cannot find module 'E:\allcode\eapp\node_modules\sqlite3\lib\binding\node-v45-win32-x64\node_sqlite3.node' สภาพแวดล้อมการพัฒนาของฉันคือ windows 8.1 x64 node เวอร์ชัน 12.7 ไฟล์package.jsonของฉันมีลักษณะดังนี้: { "name": "eapp", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start": "electron ." }, "author": "", "license": "ISC", "devDependencies": { "electron-prebuilt": "^0.32.1" }, "dependencies": { …
91 node.js  sqlite  npm  electron 

5
แนวทางปฏิบัติที่ดีที่สุดสำหรับการเปิดเผยตารางหลายตารางโดยใช้ผู้ให้บริการเนื้อหาใน Android
ฉันกำลังสร้างแอปที่มีโต๊ะสำหรับงานอีเวนต์และโต๊ะสำหรับสถานที่ต่างๆ ฉันต้องการอนุญาตให้แอปพลิเคชันอื่นเข้าถึงข้อมูลนี้ได้ ฉันมีคำถามสองสามข้อเกี่ยวกับแนวทางปฏิบัติที่ดีที่สุดสำหรับปัญหาประเภทนี้ ฉันควรจัดโครงสร้างคลาสฐานข้อมูลอย่างไร ขณะนี้ฉันมีคลาสสำหรับ EventsDbAdapter และ VenuesDbAdapter ซึ่งให้ตรรกะสำหรับการสืบค้นแต่ละตารางในขณะที่มี DbManager แยกต่างหาก (ขยาย SQLiteOpenHelper) สำหรับจัดการเวอร์ชันฐานข้อมูลสร้าง / อัปเกรดฐานข้อมูลให้การเข้าถึงฐานข้อมูล (getWriteable / ReadeableDatabase) นี่เป็นวิธีแก้ปัญหาที่แนะนำหรือฉันจะดีกว่าถ้ารวมทุกอย่างไว้ในคลาสเดียว (เช่น DbManager) หรือแยกทุกอย่างแล้วปล่อยให้ Adapter แต่ละตัวขยาย SQLiteOpenHelper ฉันจะออกแบบผู้ให้บริการเนื้อหาสำหรับหลาย ๆ ตารางได้อย่างไร ขยายคำถามก่อนหน้านี้ฉันควรใช้ผู้ให้บริการเนื้อหารายเดียวสำหรับทั้งแอปหรือควรสร้างผู้ให้บริการแยกต่างหากสำหรับกิจกรรมและสถานที่ ตัวอย่างส่วนใหญ่ฉันพบเฉพาะแอปตารางเดียวดังนั้นฉันจะขอบคุณคำแนะนำใด ๆ ที่นี่

5
sqlite3.ProgrammingError: คุณต้องไม่ใช้ 8-bit bytestrings เว้นแต่คุณจะใช้ text_factory ที่สามารถตีความ 8-bit bytestrings
ใช้ SQLite3 ใน Python ฉันพยายามจัดเก็บข้อมูลโค้ด UTF-8 HTML เวอร์ชันบีบอัด รหัสมีลักษณะดังนี้: ... c = connection.cursor() c.execute('create table blah (cid integer primary key,html blob)') ... c.execute('insert or ignore into blah values (?, ?)',(cid, zlib.compress(html))) ณ จุดใดที่ได้รับข้อผิดพลาด: sqlite3.ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory that can interpret 8-bit bytestrings …
90 python  unicode  sqlite  zlib 

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