タグ付けされた質問 「sqlite」

SQLiteは、自己完結型、サーバーレス、ゼロ構成のトランザクションSQLデータベースエンジンを実装するソフトウェアライブラリです。

6
SQLiteはISNULL()、NVL()、IFNULL()またはCOALESCE()と同等
私のコードでは、次のような多くのチェックを回避したいと思います。 myObj.someStringField = rdr.IsDBNull(someOrdinal) ? string.Empty : rdr.GetString(someOrdinal); 私は次のようなことをするだけでクエリにnullを処理させることができると考えました: SELECT myField1, [isnull](myField1, '') FROM myTable1 WHERE myField1 = someCondition 私はSQLiteを使用していますが、isnull機能を認識していないようです。私はまた、他のデータベースに認識され、いくつかの同等のものを試してみた(NVL()、IFNULL()およびCOALESCE())が、SQLiteはそれらのいずれかを認識していないようです。 誰かが何か提案をしたり、これを行うためのより良い方法を知っていますか?残念ながら、データベースにはすべてのフィールドのデフォルト値がありません。さらに、テーブルLEFT JOIN内の一致するレコードがLEFT JOIN存在しないため、返されるフィールドの一部がnullになる場合があるいくつかの句を使用する必要があります。
92 .net  sqlite  dbnull 

5
SQLiteで変数を宣言して使用する
SQLiteで変数を宣言して、insert操作で使用したい。 MS SQLのように: declare @name as varchar(10) set name = 'name' select * from table where name = @name たとえば、で取得last_insert_rowして使用する必要がありますinsert。 拘束力について何かを見つけましたが、完全には理解していませんでした。

10
行をカウントするAndroidのSQLiteクエリ
ログイン画面で入力したログイン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 not null, " + …
91 android  sqlite  count 

6
Android SQLite:更新ステートメント
アプリケーションにSQLiteを実装する必要があります。私はこのチュートリアルに従い ました。Androidoneでのデータベースの作成と使用 すべてが正常に機能しています。5列の1行を挿入しました。ここで、1列の値のみを更新し、他の列は同じままにしておきます。 チュートリアルには1つの更新メソッドがありますが、すべてのパラメーターが必要ですが、1つの列のみを更新したいと思います。
91 android  sql  sqlite 

15
PHPでsqlite3を有効にする方法は?
UbuntuにPHP用のsqlite3をインストールしようとしています。 インストールし、sqlite3拡張機能を含めるようapt-get php5-sqlite3に編集php.iniしました。 私が走るphpinfo();と私は SQLITE3 SQLite3 support enabled sqlite3 library version 3.4.2 上記のように、sqlite3有効になります。しかし、使用すると「クラスSQLite3が見つかりません」というメッセージが表示されます new SQLite3("database");
91 php  sqlite 

5
Android SQLiteデータベース:挿入が遅い
かなり大きなXMLファイル(約100キロバイトから数百キロバイトまでの範囲)を解析する必要がありますXml#parse(String, ContentHandler)。これは、を使用して実行しています。私は現在、これを152KBファイルでテストしています。 解析中、次のような呼び出しを使用してSQLiteデータベースにデータを挿入しますgetWritableDatabase().insert(TABLE_NAME, "_id", values)。これらすべてを合わせて、152KBのテストファイル(約200行を挿入する)の場合、約80秒かかります。 すべての挿入ステートメントをコメントアウトすると(ただし、作成ContentValuesなど、他のものはすべて残します)、同じファイルにかかる時間はわずか23秒です。 データベース操作でこのような大きなオーバーヘッドが発生するのは正常ですか?それについて何かできますか?

3
SQLiteデータベースから重複する行を削除する
SQLite3には、3600万行の巨大なテーブルがあります。この非常に大きなテーブルには、2つの列があります。 hash -テキスト d -本物 一部の行が重複しています。つまり、hashとdは同じ値を持っています。2つのハッシュが同じ場合、の値も同じですd。ただし、2つの同一dのが2つの同一であることを意味するわけではありませんhashのを。 重複する行を削除したい。主キー列はありません。 これを行う最速の方法は何ですか?
91 sql  database  sqlite 

20
Sqliteファイルの場所のコアデータ
通常、コアデータアプリのsqliteストアファイルは次の場所にあります ライブラリ>アプリケーションサポート> iPhoneシミュレータ> 7.1(または使用しているバージョン)>アプリケーション>(フォルダにアプリが含まれているフォルダ)>ドキュメント フォルダーですが、IOS 8では見つかりません。iPhoneシミュレーターフォルダー内に8.0フォルダーを追加するだけだと思いますが、そこにはありません。誰かがそれを見つけることができましたか?

10
SQLiteを使用したAndroidの外部キー制約?カスケードの削除時
トラックとウェイポイントの2つのテーブルがあります。トラックには多くのウェイポイントを設定できますが、ウェイポイントは1つのトラックにのみ割り当てられます。 ウェイポイントテーブルには、トラックが作成されるとtrack_IDを挿入する「trackidfk」という列がありますが、この列には外部キー制約を設定していません。 割り当てられたウェイポイントを削除したいトラックを削除した場合、これは可能ですか?トリガーの使用について読みましたが、Androidでサポートされているとは思いません。 ウェイポイントテーブルを作成するには: public void onCreate(SQLiteDatabase db) { db.execSQL( "CREATE TABLE " + TABLE_NAME + " (" + _ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + LONGITUDE + " INTEGER," + LATITUDE + " INTEGER," + TIME + " INTEGER," + TRACK_ID_FK + " INTEGER" + " );" …

8
SQLiteコマンドラインシェル内からデータベースファイルを開く
SQLiteコマンドラインシェルを使用しています。文書化されているように、実行可能ファイルの引数として指定することで、データベースを開くことができます。 sqlite3 data.db コマンドライン引数としてファイルを指定せずにデータベースファイルを呼び出した後で、ツール内からデータベースファイルを開く方法がわかりません(Windowsでsqlite3.exeをダブルクリックした場合など)。データベースファイルを指定するSQLiteシェルツール内のコマンドは何ですか?
91 sqlite 

5
Androidのコンテンツプロバイダーを使用して複数のテーブルを公開するためのベストプラクティス
イベント用のテーブルと会場用のテーブルがあるアプリを作成しています。他のアプリケーションにこのデータへのアクセスを許可できるようにしたい。この種の問題のベストプラクティスに関していくつか質問があります。 データベースクラスはどのように構成すればよいですか? 現在、EventsDbAdapterとVenuesDbAdapterのクラスがあります。これらのクラスは、各テーブルをクエリするためのロジックを提供し、データベースバージョンの管理、データベースの作成/アップグレード、データベースへのアクセス(getWriteable / ReadeableDatabase)のための個別のDbManager(SQLiteOpenHelperを拡張)を備えています。これは推奨される解決策ですか、それともすべてを1つのクラス(つまり、DbManager)に統合するか、すべてを分離して、各アダプタにSQLiteOpenHelperを拡張させた方がよいでしょうか? 複数のテーブルのコンテンツプロバイダーを設計するにはどうすればよいですか? 前の質問を拡張して、アプリ全体に1つのコンテンツプロバイダーを使用する必要がありますか、それともイベントと会場に個別のプロバイダーを作成する必要がありますか? 私が見つけたほとんどの例は単一テーブルのアプリのみを扱っているので、ここでのポインタに感謝します。

5
sqlite3.ProgrammingError:8ビットのバイト文字列を解釈できるtext_factoryを使用しない限り、8ビットのバイト文字列を使用しないでください
PythonでSQLite3を使用して、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 (like text_factory = str). It is highly …
90 python  unicode  sqlite  zlib 

2
SQLクエリを介してSqliteのテーブルの最初/一番上の行を取得する方法
Sqliteデータベースのテーブルの最初/一番上の行をフェッチする必要があります。 しかし、私のプログラムは、使用しているクエリに対してSQLException "Sqlite Syntax Error:Syntax error near'1 '"をスローします。 SELECT TOP 1 * FROM SAMPLE_TABLE 私が推測するのは、特にMS SQLSERVERとMSACCESSの構文です。今使っています。 SELECT * FROM SAMPLE_TABLE LIMIT 1 この問題の最善の解決策は何ですか?
90 sql  sqlite 

14
SQLiteに存在しない場合はALTERTABLE ADD COLUMN
最近、既存のSQLiteデータベーステーブルのいくつかに列を追加する必要がありました。これはで行うことができますALTER TABLE ADD COLUMN。もちろん、テーブルがすでに変更されている場合は、そのままにしておきます。残念ながら、SQLiteはのIF NOT EXISTS句をサポートしていませんALTER TABLE。 現在の回避策は、このPythonの例のように(ただしC ++で)、ALTER TABLEステートメントを実行し、「列名の重複」エラーを無視することです。 ただし、データベーススキーマを設定するための通常のアプローチはCREATE TABLE IF NOT EXISTS、CREATE INDEX IF NOT EXISTSステートメントを含む.sqlスクリプトを作成することです。これは、sqlite3_execまたはsqlite3コマンドラインツールを使用して実行できます。ALTER TABLEこれらのスクリプトファイルを挿入することはできません。そのステートメントが失敗すると、それ以降は実行されないためです。 テーブル定義を1つの場所に置き、.sqlファイルと.cppファイルに分割したくない。ALTER TABLE ADD COLUMN IF NOT EXISTS純粋なSQLiteSQLで回避策を書く方法はありますか?

2
複数の接続から同時にSQLiteデータベースの読み取りと書き込みを行うことはできますか?
2つのプロセスで使用されるSQLiteデータベースがあります。SQLiteの最新バージョンでは、一方のプロセス(接続)がデータベースに書き込むためのトランザクションを開始しているときに、もう一方のプロセスがデータベースから同時に読み取ることができるのでしょうか。
89 sqlite 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.