質問

かつてメタデータ/制約(主キーやnullの場合せ"の各欄にSQLite.phpがv2で増えたファイルです。8テーブルを使用PHP5(mysql_fetch_fieldのためのMySql)?

sqlite_fetch_column_types (OO: $db->fetchColumnTypes のみを取得すカラム名とデータ型:
http://dk.php.net/manual/en/function.sqlite-fetch-column-types.php

SQLITE_MASTERの情報がないとして可変となります。例:
SELECT name FROM SQLITE_MASTER;

...SQLITE_MASTERのみ出力の配列をこのように構成(.phpがv2で増えたファイルです。8):

[type] => table
[name] => foo
[tbl_name] => foo
[rootpage] => 3
[sql] => CREATE TABLE foo ( id INTEGER PRIMARY KEY, name CHAR(255) )

(とは何か"rootpage"?)

役に立ちましたか?

解決

しなければいけなかったことを実施する describeTable() 法SQLiteに在籍した時期に、Zend Framework.SQLiteのない方は大変おいしくいただけました詳細な情報メタデータを指すものとします。

かったため、下記のUrlのクエリ:

PRAGMA tableinfo( <tablename> );

http://www.sqlite.org/pragma.html, 下のPragmasるクエリのデータベースのスキーマ."

結果セットから返されたこのクエリは、カラム:

  • カラムの位置(整数)
  • カラム名(string)
  • データタイプ(string)
  • nullable(0)vs.nullでない場合(1)
  • デフォルト値(string)
  • 主キー(1)

示できるPHPのコードをダウンロードZend Frameworkとのみクラス Zend_Db_Adapter_Pdo_Sqlite, 方法 describeTable().また、ソースオンラインのコードリポジトリブラウザでframework.zend.com (こくない).

FWIWこのようにはいきません mysql_fetch_field().このメソッドが返すメタデータ約結果セットを与える恐れがあるため、同じものとしてメタデータ報を表示します。

他のヒント

私のために働いた例のコードスニペット...ビルKarwinのソリューションを説明するために(それは私自身の質問に答えるための試みではありません!)

$db = new SQLiteDatabase("db.sqlite2");  
$rs = $db->arrayQuery("PRAGMA table_info( 'my_table' );");
print_r($rs);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top