古い記事
この記事は公開から1年以上経っており,情報が古い可能性があります.Deprecated: the_author_ID の使用はバージョン 2.8.0 から非推奨になっています ! 代わりに the_author_meta('ID') を使ってください。 in /var/www/html/blog/wp-includes/functions.php on line 4779
2
.NET環境(VB.NET/C#)でデータベースのテーブルへデータを追加・呼出が手軽に行えるようにしたライブラリです。
サンプルソース
シリアライズ
[Serializable, DataContract, DBSerializable("datas")] public class DateData : DBSerialize.DBSerialize<DateData> { [DataMember, PrimaryKey, Autoincrement] public int ID { get; set; } [DataMember] public int Code { get; set; } [DataMember] public int Date { get; set; } [DataMember] public float End { get; set; } [DataMember] public float Start { get; set; } } DateData dd = new DateData() { Code = 1000, Date = 20141225, End = 100, Start = 100 }; dd.Add(db_connection);
新しく行を追加したい場合はAddメソッド、PrimaryKeyに指定したプロパティへ上書き保存する場合はSaveメソッドを使用します。
シリアライズするクラスには必ずSerializable属性を、対応するデータベースのテーブル名の指定はDBSerializableで行います。
シリアライズするメンバーにはDataMember属性をつけてください。また、DataMemberで指定したNameプロパティは無視されます。
デシリアライズ
DateData.Load(db_connection);
この一行で行えます。
LoadWhereメソッドを使用すれば条件付きでデータを列挙できます。
その際に指定する条件の文はSQL文のWHEREに指定する文字をそのまま指定してください。
例:id=10 や id > 10 and text like “%aa%” など
また、string.Formatメソッドのように大カッコを使用した条件式も使用できます。
DateData.LoadWhere(db_connection, "ID={0}", 10);
データベースの種類(Ver 1.1 <)
このシリアライザーはSQLiteやMySQLの両方は少なくとも動作するように作られています。
この2つ、内部で呼び出す関数が異なるもあるため、はっきりと使用するデータベースの種類を教えて上げる必要があります。
DateData dd = new DateData(); // ... dd.Setting = DBSerialize.DBSerializeSettings.MySQL; dd.Add(connection);
SQLiteとMySQLについては予め定義してある設定を呼び出すだけで大丈夫です。
その他についてもDBSerializeSettingクラスで対応できれば使用できます。
ダウンロード
最新
[wpdm_file id=23]リリースノート
詳しい内容についてはタグ”DB Serializer“にて公開しています。
Ver 1.1
[wpdm_file id=23] SQL文を組み立てる場合にパラメータを使用しないオプションを追加(Addメソッドの第2引数)MySQLに対応