FreeSql (五)插入資料

2022-01-13 05:20:25 字數 1586 閱讀 1928

var connectionstring = "data source=127.0.0.1;port=3306;user id=root;password=root;" + 

"initial catalog=cccddd;charset=utf8;sslmode=none;max pool size=10";

static ifreesql fsql = new freesql.freesqlbuilder()

.useconnectionstring(freesql.datatype.mysql, connectionstring)

.useautosyncstructure(true) //自動同步實體結構到資料庫

.build(); //請務必定義成 singleton 單例模式

class topic

public int clicks

public string title

public datetime createtime

}

fsql.insert(new topic ).executeaffrows();
執行sql如下:

insert into `topic`(`clicks`, `title`, `createtime`) values(@clicks0, @title0, @createtime0)
如果表有自增列,插入資料後應該要返回 id。

方法1:(原始)

long id = fsql.insert(blog).executeidentity();

blog.id = id;

方法2:(依賴 freesql.repository)

var repo = fsql.getrepository();

repo.insert(blog);

內部會將插入後的自增值填充給 blog.id

方法

返回值引數

描述commandtimeout

int命令超時設定(秒)

withtransaction

dbtransaction

設定事務物件

withconnection

dbconnection

設定連線物件

tosql

string

返回即將執行的sql語句

executeaffrows

long

執行sql語句,返回影響的行數

executeidentity

long

執行sql語句,返回自增值

executeinserted

list

執行sql語句,返回插入後的記錄

executesqlbulkcopy

void

sqlserver 特有的功能,執行 sqlbulkcopy 批量插入的封裝

executepgcopy

void

postgresql 特有的功能,執行 copy 批量匯入資料

FreeSql 插入資料返回自增值

freesql是乙個功能強大的 net orm 功能庫,支援 netframework 4.0 netcore 2.1 xamarin 等支援 netstandard 所有執行平台。以 mit 開源協議託管於 github freesql 插入資料的方式有多種,這篇文章教你用最優的方案做資料插入功能...

FreeSql (七)插入資料時忽略列

var connectionstring data source 127.0.0.1 port 3306 user id root password root initial catalog cccddd charset utf8 sslmode none max pool size 10 stat...

FreeSql (十)更新資料

freesql提供豐富的資料庫更新功能,支援單條或批量更新,在特定的資料庫執行還可以返回更新後的記錄。static ifreesql fsql new freesql.freesqlbuilder useconnectionstring freesql.datatype.mysql,connecti...