sqlite資料庫如何遠程連接代碼如下:
QSqlDatabase
db
=QSqlDatabase::addDatabase("QSQLITE");
db.setHostName("192.168.1.160");//設置你網路伺服器的IP
db.setDatabaseName("/share/personnel.db");//share共享目錄下的資料庫名
db.setUserName("PersionSql");//資料庫用戶名和密碼
db.setPassword("123456");
if
(!db.open())
qDebug()
<<
"Failed
to
connect
to
QSQLITE";
else
qDebug()
<<
"success!";
說明:訪問網路遠程資料庫則必須要關閉本機和遠程PC機上的防火牆,訪問的遠程資料庫的路徑不能為中文路徑
② sqlite資料庫如何遠程連接
sqlite遠程連接示例
Sqlite 是一個只有幾百 k 大小的、 優秀的嵌入式資料庫,本身不帶有遠程連接的功能。由於其身材小,速度快並且為眾多的語言支持,所以在單機領域得到了廣泛的使用。但由於天然不支持服務 / 客戶端的模式,使其在遇到小型規模資料庫遠程連接的情況時不得不藉助於附加的編程。
單位有三百多人,作為網管每天要接到很多電話,有很多一時無法想起對應的名字,翻查通訊錄不僅速度慢而且容易漏過。為了方便起見,在 sqlite 上建立了一個通訊錄數據表,然後用 perl 編寫了一個查詢腳本。效果不錯的同時,也有同事希望可以得到一份拷貝。但是這時遇到一個問題,如何保證通訊錄在不同人手中保持版本的統一性。最好的辦法是建立一個服務 / 客戶端的模式,在本機上維護一個資料庫,而其它人通過連接資料庫得到相關的查詢結果。
具體的解決方法是這樣的:在本機上維護一個到 sqlite 資料庫的連接並建立一個來自於客戶端的 socket 的監聽,接受遠程查詢條件並回復查詢結果;客戶端志負責發送和接受這些最簡單的任務。
客戶端的代碼:
usestrict;
my$in_buffer=undef;
my$PF_INET=2;
my$port=2345;
my$remote_addr=pack('SnC4x8',$PF_INET,$port,192,168,138,228);
my$SOCK_DGRAM=2;
socket(UDP_CLIENT,$PF_INET,$SOCK_DGRAM,getprotobyname('udp'));
while(1){
print("輸入名字或號碼:");
my$out_buffer=<STDIN>;
chomp($out_buffer);
if($out_buffereq"exit"){last;}
send(UDP_CLIENT,$out_buffer,0,$remote_addr);
print("waitingforreply... ");
recv(UDP_CLIENT,$in_buffer,100,0);
chomp($in_buffer);
print("$in_buffer ");
}
close(UDP_CLIENT);
伺服器端的代碼:
BEGIN{
if($^Oeq'MSWin32'){
requireWin32::Console;
Win32::Console::Free();
}
}
usestrict;
useDBI;
#databaseparameters
my$db_path='d:/src/cc/phones.db';
my$dbh=DBI->connect("dbi:SQLite:$db_path",{PrintError=>0})ordie$DBI::errstr;
my$sth=undef;
#socketserverparameters
my$in_buffer=undef;
my$out_buffer=undef;
my$PF_INET=2;
my$port=2345;
my$local_addr=pack('SnC4x8',$PF_INET,$port,192,168,138,228);
my$SOCK_DGRAM=2;
socket(UDP_SERVER,$PF_INET,$SOCK_DGRAM,getprotobyname('udp'))ordie("$!");
bind(UDP_SERVER,$local_addr)ordie("$!");
listen(UDP_SERVER,10);
while(1){
#receivequerythensendresult
lastunlessmy$remote_addr=recv(UDP_SERVER,$in_buffer,100,0);
chomp($in_buffer);
if($in_buffer=~/^[0-9]{6}$/){
$sth=$dbh->prepare("select*fromphoneswherenumber=$in_buffer");
PROCEDURE:
$sth->execute();
my@items=$sth->fetchrow_array();
if(scalar(@items)){
$out_buffer=$items[0].'的虛擬網號碼是'.$items[1];
}else{
$out_buffer='查無此人';
}
}else{
$sth=$dbh->prepare("select*fromphoneswherename='$in_buffer'");
gotoPROCEDURE;
}
send(UDP_SERVER,$out_buffer,0,$remote_addr);
}
#disconnectfromsqlite
$dbh->disconnect();
③ c#中怎麼連接到sqlite資料庫
一、關於SQLite ADO.NET: System.Data.SQLite 是一個原始 SQLite 的加強版。它不需要鏈接 .NET Runtime,因此可脫離 .NET 獨立發布,它內嵌了一個完整的 ADO.NET 2.0 引擎,為開發提供了完整的支持。
二、在C#中使用SQLite
1. 添加引用: System.Data.SQLite.DLL 。
2. 創建資料庫文件: SQLiteConnection.CreateFile(fileName);
3. 連接資料庫: var connection = new SQLiteConnection(connectionString);
connectionString 中包含了資料庫的一些配置信息,比如資料庫文件路徑,資料庫密碼等,可用 SQLiteConnectionStringBuilder 來創建 connectionString,當然也有其他方法,都很簡單。
4. 從資料庫讀取數據。
三、代碼:
view sourceprint?
// 注意此處 using 。
using System;
using System.Data.SQLite;
using System.Text;
namespace ConsoleApplication
{
public class SQLiteTester
{
public static void Test()
{
// 1.創建一個資料庫文件。
var databaseFileName = "D:/test.db3";
SQLiteConnection.CreateFile(databaseFileName);
// 2.創建資料庫連接。
var connectionString = new SQLiteConnectionStringBuilder
{
DataSource = databaseFileName,
Password = "xxxxxx" // 此處假設資料庫密碼為: xxxxxx。
};
// 當然也可以直接: var connection = new SQLiteConnection("data source=" + databaseFileName + ";password=" + Password);
using (var connection = new SQLiteConnection(connectionString.ToString()))
{
// 3.打開連接。
connection.Open();
④ android怎麼連接sqlite資料庫
//用資料庫助手類:SQLiteOpenHelper連接
//當然這個類是個虛擬(abstract)類,所以你要寫個子類出來
//例如:
/**資料庫助手類*/
publicclassCU_{
/**版本號*/
privatestaticfinalintVERSION=1;
/**資料庫對象*/
privateSQLiteDatabasedb=null;
/**在SQLiteOepnHelper的子類當中,必須有該構造函數*/
publicCU_SqlHelper(Contextcontext,Stringname,CursorFactoryfactory,intversion){
//必須通過super調用父類當中的構造函數
super(context,name,factory,version);
}
publicCU_SqlHelper(Contextcontext,StringdbName){
this(context,dbName,VERSION);
}
publicCU_SqlHelper(Contextcontext,StringdbName,intversion){
this(context,dbName,null,version);
}
/**該函數是在第一次創建資料庫的時候執行,實際上是在第一次得到SQLiteDatabse對象的時候,才會調用這個方法*/
@Override
publicvoidonCreate(SQLiteDatabasedb){}
@Override
publicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){}
/**打開資料庫*/
publicvoidopenDB(){
db=getWritableDatabase();
}
/**關閉資料庫*/
publicvoidcloseDB(){
if(db!=null){
db.close();
}
}
/**獲得資料庫*/
publicSQLiteDatabasegetDB(){
if(db==null){
openDB();
}else{
db.close();
openDB();
}
returndb;
}
}
具體的增刪查改等操作你就要好好的看一下網上,詳細的使用方法很多的
⑤ Navicat怎麼連接Sqlite資料庫
Navicat連接sqlite資料庫的方法比較簡便,點擊左上角的文件->新建連接,選擇SQLite資料庫。在彈出的新建連接對話框,填寫相關的信息,點擊確定就可。
已加密:當連接到已加密的SQLite資料庫,啟用這個選項並提供密碼。
已附加的資料庫:在連接中附加或分離資料庫。
具體的教程可以參考Navicat官網www.formysql.com提供的相關的教程。
⑥ Navicat怎麼連接Sqlite資料庫
步驟一:在Navicat官網的下載頁面下載 Navicat for SQLite 安裝包,運行應用程序,完成安裝任務。Navicat for SQLite 安裝包下載地址:http://www.formysql.com/xiazai_sqlite.html
步驟二:點擊桌面上的 Navicat for SQLite 圖標,進入到Navicat主界面。
步驟三:點擊Navicat主界面左上角的文件,選擇新建連接,最後選擇SQLite。
步驟四:在彈出的新建連接對話框中輸入正確的信息,點擊「確定」按鈕。
步驟五:新建的 SQLite 資料庫就顯示在 Navicat 主界面的連接樹下。
⑦ sqlite怎麼連接資料庫文件
sorry, 沒安裝"sqlite developer".
若只是想導出sqlite資料庫中的表數據可以很簡單地用sqlite命令:
tim@ubtim:~/workspace$ sqlite3
SQLite version 3.7.7 2011-06-23 19:49:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> create table tb_test (field int, val varchar(3));
sqlite> insert into tb_test values (1, 'a');
sqlite> insert into tb_test values (2, 'b');
sqlite> insert into tb_test values (3, 'c');
sqlite> .mode csv
sqlite> .output tb_test.csv
sqlite> select * from tb_test;
sqlite> .q
tim@ubtim:~/workspace$ cat tb_test.csv
1,a
2,b
3,c
tim@ubtim:~/workspace$
⑧ 如何讓Navicat for SQLite 連接Sqlite資料庫
Navicat for SQLite 配備了數據編輯、SQL查詢和數據模型工具,並支持所有SQLite對象類型。其主要功能有數據傳輸、數據同步、導入或導出、報表等。其憑借設計的方便快捷的用戶界面,並且用戶創建、組織、訪問和共享信息都非常的簡便快捷,優化SQLite工作流程,提高工作效率。下面我們將給大家介紹介紹如何讓Navicat
for SQLite 連接Sqlite資料庫?
Navicat 連接Sqlite資料庫的方法和步驟如下:
步驟一:在Navicat官網的下載頁面下載 Navicat for SQLite 安裝包,運行應用程序,完成安裝任務。Navicat for SQLite 安裝包下載地址:http://www.formysql.com/xiazai_sqlite.html
步驟二:點擊桌面上的 Navicat for SQLite 圖標,進入到Navicat主界面。
步驟三:點擊Navicat主界面左上角的文件,選擇新建連接,最後選擇SQLite。
Navicat連接Sqlite資料庫
步驟四:在彈出的新建連接對話框中輸入正確的信息,點擊「確定」按鈕。
Navicat連接Sqlite資料庫
步驟五:新建的 SQLite 資料庫就顯示在 Navicat 主界面的連接樹下。
⑨ 求助,VS2015怎麼連接SQLite資料庫,大神來吧
使用SQLite庫文件(DLL文件)
#include<stdio.h>
#include"sqlite3.h"
#pragmacomment(lib,"sqlite3.lib")//靜態鏈接DLL
intmain()
{
sqlite3*pdb;//資料庫鏈接句柄
intret;//接收返回值
ret=sqlite3_open("test.db",&pdb);//打開資料庫,如果資料庫不存在則新建
if(ret==SQLITE_OK)
{
printf("資料庫連接成功!");
return1;
}
return0;
}
sqlite3_open
描述:
打開SQLite3資料庫。
SQLITE_APIintSQLITE_STDCALLsqlite3_open(
constchar*filename,
sqlite3**ppDb
);
filename:資料庫文件的路徑與名稱(UTF-8)
ppDb:輸出:資料庫連接句柄
注釋:
filename
資料庫文件的路徑與名稱(UTF-8)。
如果文件名為「:memory:」,則打開的資料庫為臨時內存資料庫。連接關閉後自動刪除。
如果此參數為NULL,則將創建專用的臨時磁碟資料庫。連接關閉後自動刪除。
ppDb
指向保存資料庫連接句柄的地址。
注意:無論打開時是否發生錯誤,都要調用sqlite3_close函數來釋放資料庫連接句柄。
Windows運行時用戶注意事項:必須在調用sqlite3_open函數之前設置臨時目錄。否則,需要使用臨時文件的各種功能可能會失敗。
返回值:
如果函數執行成功將會返回SQLITE_OK,否則返回否則返回錯誤代碼。
錯誤代碼的詳細信息可以通過sqlite3_errmsg函數或sqlite3_errmsg16函數獲取。
⑩ 如何讓Navicat for SQLite 連接Sqlite資料庫
打開Navicat之後,點擊連接,選擇SQLite, 在彈出頁面中的「連接名」輸入名稱