acp資料庫
可用存儲過程來添加。
如為test開頭的表添加一個欄位,類型及長度為varchar(10)
代碼如下:
declare@tablenamevarchar(200)
declare@svarchar(2000)
declare@colvarchar(10)
declareccursorfor
selectnamefromdbo.sysobjectswherextype='U'andstatus>=0andnamelike'test%'
set@col='name1'
openc
fetchnextfromcinto@tablename
while@@FETCH_STATUS=0
begin
set@s='altertable'+@tablename+'add'+@col+'varchar(10)'
exec(@s)
fetchnextfromcinto@tablename
end
closec
deallocatec
執行成功後會有成功提示,如圖:
❷ 如何在一條sql語句中連接遠程資料庫,sql server 2000
不能這樣做吧,同一個sql server 2000 不同的庫之間是可以的
用 資料庫名..dbo.表名
❸ 邁特思創 資料庫能搜到的都是那些外國文獻資料庫的文章啊急求~!!嗚嗚嗚
復制發送哈
FMRS
2800餘萬外文醫學數據
32000餘種期刊
免費下載 × 全文翻譯 × 可視化分析
CPSR
讓醫生診療活動能依據證據輕松決策
循證資源檢索平台 × 轉化醫學推廣平台
專注診療 × 助力科研
FEBM簡介
臨床決策循證資料庫(FEBM),整合了PubMed、Cochrane library、ACP Journal
Club、Poems、Clinical Evidence和Evidence
based等循證醫學資源,資源覆蓋率達到90%,使醫生能夠一站式檢索獲取到各個重要循證資料庫資源。同時新版的FEBM整合了國際權威的臨床試驗注冊資源,能夠及時獲取未發表和正在進行中的研究成果。系統提供了標準的證據過濾及評價工具,嚴格依照循證醫學實踐的原則提供相應的信息分類過濾工具,方便快速查找、篩選、使用證據資源。
❹ php怎麼連接access資料庫
(1)創建系統數據源,用PHP提供的ODBC函數。
(2)使用PHP的ODBC函數,但不創建數據源。
PHP使用ODBC連接Access 資料庫的方法。用$connstr="DRIVER= Microsoft Access Driver (*.mdb)來設置數據驅動,函數realpath()用來取得資料庫的相對路徑。利用該方法連接Access資料庫主要應用到PHP的 odbc_connect()函數,該函數聲明如下:
以下為引用的內容:
resourse odbc_connect( string dsn, string user, string password [, int cursor_type])
dsn:系統dsn名稱
user:資料庫伺服器某用戶名。
password:資料庫伺服器某用戶密碼。
cursor_type:游標類型。
代碼如下:
以下為引用的內容:
$connstr="DRIVER=Microsoft Access Driver (*.mdb);
DBQ=".realpath("bookinfo.mdb");
$connid=odbc_connect($connstr,"","",SQL_CUR_USE_ODBC );
(3)使用微軟的ADODB資料庫驅動。
定義類COM來使用ADO方法操縱Access資料庫的。
該類詳細說明如下:
以下為引用的內容:
string com::com( string mole_name [, string server_name [, int codepage]])
mole_name:被請求組件的名字或class-id。
server_name:DCOM伺服器的名字。
Codepage:指定用於將PHP字元串轉換成UNICODE字元串的代碼頁,反之亦然。該參數的取值有CP_ACP、CP_MACCP、CP_OEMCP、CP_SYMBOL、CP_THREAD_ACP、CP_UTF7和CP_UTF8。
PHP利用com類並使用ADO方法訪問資料庫的代碼如下:
以下為引用的內容:
$conn = new com("ADODB.Connection");
$connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("bookinfo.mdb ");
$conn->Open($connstr);
❺ sqlserver怎麼導出資料庫
材料/工具:SQL Server
1、打開SQL Server,找到需要導出的資料庫。
❻ c#向資料庫插入數據的各種方法
1、首先創建一個用來測試的資料庫和表,為了讓插入數據更快,表中主鍵採用的是GUID,如圖所示。
❼ SQLSERVER資料庫中批量導入數據的幾種方法
我們通過SQL腳本來插入數據,常見如下四種方式。
方式一:一條一條插入,性能最差,不建議使用。
INSERT INTO Proct(Id,Name,Price) VALUES(newid(),'牛欄1段',160);INSERT INTO Proct(Id,Name,Price) VALUES(newid(),'牛欄2段',260);
......
方式二:insert bulk
語法如下:
方式四:拼接SQL
INSERT INTO Proct(Id,Name,Price) VALUES(newid(),'牛欄1段',160)
,(newid(),'牛欄2段',260)
......
❽ sqlserver導資料庫有幾種方法
1. SQL Server導入導出向導,這種方式是最方便的.
導入向導,微軟提供了多種數據源驅動,包括SQL Server Native Cliant, OLE DB For Oracle,Flat File Source,Access,Excel,XML等,基本上可以滿足系統開發的需求.
同樣導出向導也有同樣多的目的源驅動,可以把數據導入到不同的目的源.
對資料庫管理人員來說這種方式簡單容易操作,導入時SQL Server也會幫你建立相同結構的Table.
2. 用.NET的代碼實現(比如有一個txt或是excel的檔案,到讀取到DB中)
2.1 最為常見的就是循環讀取txt的內容,然後一條一條的塞入到Table中.這里不再贅述.
2.2 集合整體讀取,使用OLEDB驅動.
代碼如下:
代碼
string strOLEDBConnect = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\1\;Extended Properties='text;HDR=Yes;FMT=Delimited'";
OleDbConnection conn = new OleDbConnection(strOLEDBConnect);
conn.Open();
SQLstmt = "select * from 1.txt";//讀取.txt中的數據
DataTable dt=new DataTable();
OleDbDataAdapter da = new OleDbDataAdapter(SQLstmt, conn);
da.Fill(dt);//在DataSet的指定范圍中添加或刷新行以匹配使用DataSet、DataTable 和IDataReader 名稱的數據源中的行。
if(dt.Rows.Count>0)
foreach(DataRow dr in dt.Rows)
{
SQLstmt = "insert into MyTable values('" + dr..."
3.BCP,可以用作大容量的數據導入導出,也可以配合來使用.
語法:
代碼
bcp {[[database_name.][schema].]{table_name | view_name} | "query"}
{in | out | queryout | format} data_file
[-mmax_errors] [-fformat_file] [-x] [-eerr_file]
[-Ffirst_row] [-Llast_row] [-bbatch_size]
[-ddatabase_name] [-n] [-c] [-N] [-w] [-V (70 | 80 | 90 )]
[-q] [-C { ACP | OEM | RAW | code_page } ] [-tfield_term]
[-rrow_term] [-iinput_file] [-ooutput_file] [-apacket_size]
[-S [server_name[\instance_name]]] [-Ulogin_id] [-Ppassword]
[-T] [-v] [-R] [-k] [-E] [-h"hint [,...n]"]
請注意數據導入導出的方向參數:in,out,queryout
如:
如:
4.BULK INSERT. T-SQL的命令,允許直接導入數據
語法:
BULK INSERT
[ database_name. [ schema_name ] . | schema_name. ] [ table_name | view_name ]
FROM 'data_file'
[ WITH
(
[ [ , ] BATCHSIZE =batch_size ]
[ [ , ] CHECK_CONSTRAINTS ]
[ [ , ] CODEPAGE = { 'ACP' | 'OEM' | 'RAW' | 'code_page' } ]
[ [ , ] DATAFILETYPE =
{ 'char' | 'native'| 'widechar' | 'widenative' } ]
[ [ , ] FIELDTERMINATOR = 'field_terminator' ]
[ [ , ] FIRSTROW = first_row ]
[ [ , ] FIRE_TRIGGERS ]
[ [ , ] FORMATFILE ='format_file_path' ]
[ [ , ] KEEPIDENTITY ]
[ [ , ] KEEPNULLS ]
[ [ , ] KILOBYTES_PER_BATCH =kilobytes_per_batch ]
[ [ , ] LASTROW =last_row ]
[ [ , ] MAXERRORS =max_errors ]
[ [ , ] ORDER ( { column [ ASC | DESC ] } [ ,...n ] ) ]
[ [ , ] ROWS_PER_BATCH =rows_per_batch ]
[ [ , ] ROWTERMINATOR ='row_terminator' ]
[ [ , ] TABLOCK ]
[ [ , ] ERRORFILE ='file_name' ]
)]
重要參數:
FIELDTERMINATOR,欄位分隔符
FIRSTROW:第一個數據行
ROWTERMINATOR:行終結符
如:
BULK INSERT dbo.ImportTest
FROM 'C:\ImportData.txt'
WITH ( FIELDTERMINATOR =',', FIRSTROW = 2 )
5. OPENROWSET也是T-SQL的命令,包含有DB連接的信息和其它導入方法不同的是,OPENROWSET可以作為一個目標表參與INSERT,UPDATE,DELETE操作.
語法:
OPENROWSET
( { 'provider_name', { 'datasource';'user_id';'password'
| 'provider_string' }
, { [ catalog. ] [ schema. ] object
| 'query'
}
| BULK 'data_file',
{ FORMATFILE ='format_file_path' [ <bulk_options> ]
| SINGLE_BLOB | SINGLE_CLOB | SINGLE_NCLOB }
} )<bulk_options> ::=
[ , CODEPAGE = { 'ACP' | 'OEM' | 'RAW' | 'code_page' } ]
[ , ERRORFILE ='file_name' ]
[ , FIRSTROW = first_row ]
[ , LASTROW = last_row ]
[ , MAXERRORS = maximum_errors ]
[ , ROWS_PER_BATCH =rows_per_batch ]
如:
INSERT INTO dbo.ImportTest
SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\ImportData.xls', 'SELECT * FROM [Sheet1$]') WHERE A1 IS NOT NULL
6.OPENDATASOURCE
語法:
OPENDATASOURCE ( provider_name,init_string )
如:
INSERT INTO dbo.ImportTest
SELECT * FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=C:\ImportData.xls;Extended Properties=Excel 8.0')...[Sheet1$]
7.OPENQUERY.是在linked server的基礎上執行的查詢.所以執行之前必須先建立好link server.OPENQUERY的結果集可以作為一個table參與DML的操作.
語法:
OPENQUERY (linked_server ,'query')
如:
EXEC sp_addlinkedserver 'ImportData',
'Jet 4.0', 'Microsoft.Jet.OLEDB.4.0',
'C:\ImportData.xls',
NULL,
'Excel 8.0'
GO
INSERT INTO dbo.ImportTest
SELECT *
FROM OPENQUERY(ImportData, 'SELECT * FROM [Sheet1$]')
❾ 怎麼把收到的UDP數據批量存儲到資料庫
Transact-SQL 參考
BULK INSERT
以用戶指定的格式復制一個數據文件至資料庫表或視圖中。
語法
BULK INSERT [ [ 'database_name'.][ 'owner' ].]{ 'table_name' FROM 'data_file' }
[ WITH
(
[ BATCHSIZE [ = batch_size ] ]
[ [ , ] CHECK_CONSTRAINTS ]
[ [ , ] CODEPAGE [ = 'ACP' | 'OEM' | 'RAW' | 'code_page' ] ]
[ [ , ] DATAFILETYPE [ =
{ 'char' | 'native'| 'widechar' | 'widenative' } ] ]
[ [ , ] FIELDTERMINATOR [ = 'field_terminator' ] ]
[ [ , ] FIRSTROW [ = first_row ] ]
[ [ , ] FIRE_TRIGGERS ]
[ [ , ] FORMATFILE = 'format_file_path' ]
[ [ , ] KEEPIDENTITY ]
[ [ , ] KEEPNULLS ]
[ [ , ] KILOBYTES_PER_BATCH [ = kilobytes_per_batch ] ]
[ [ , ] LASTROW [ = last_row ] ]
[ [ , ] MAXERRORS [ = max_errors ] ]
[ [ , ] ORDER ( { column [ ASC | DESC ] } [ ,...n ] ) ]
[ [ , ] ROWS_PER_BATCH [ = rows_per_batch ] ]
[ [ , ] ROWTERMINATOR [ = 'row_terminator' ] ]
[ , [ TABLOCK ] ]
)
]
參數
'database_name'
是包含指定表或視圖的資料庫的名稱。如果未指定,則系統默認為當前資料庫。
'owner'
是表或視圖所有者的名稱。當執行大容量復制操作的用戶擁有指定的表或視圖時,owner 是可選項。如果沒有指定 owner 並且執行大容量復制操作的用戶不擁有指定的表或視圖,則 Microsoft® SQL Server™ 將返回錯誤信息並取消大容量復制操作。
'table_name'
是大容量復制數據於其中的表或視圖的名稱。只能使用那些所有的列引用相同基表所在的視圖。有關向視圖中復制數據的限制的更多信息,請參見 INSERT。
'data_file'
是數據文件的完整路徑,該數據文件包含要復制到指定表或視圖的數據。BULK INSERT 從磁碟復制數據(包括網路、軟盤、硬碟等)。
data_file 必須從運行 SQL Server 的伺服器指定有效路徑。如果 data_file 是遠程文件,則請指定通用命名規則 (UNC) 名稱。
BATCHSIZE [ = batch_size ]
指定批處理中的行數。每個批處理作為一個事務復制至伺服器。SQL Server提交或回滾(在失敗時)每個批處理的事務。默認情況下,指定數據文件中的所有數據是一個批處理。
CHECK_CONSTRAINTS
指定在大容量復制操作中檢查 table_name 的任何約束。默認情況下,將會忽略約束。
CODEPAGE [ = 'ACP' | 'OEM' | 'RAW' | 'code_page' ]
指定該數據文件中數據的代碼頁。僅當數據含有字元值大於 127 或小於 32 的 char、varchar 或 text 列時,CODEPAGE 才是適用的。
CODEPAGE 值 描述
ACP char、varchar 或 text 數據類型的列從 ANSI/Microsoft Windows® 代碼頁 ISO 1252 轉換為 SQL Server 代碼頁。
OEM(默認值) char、varchar 或 text 數據類型的列被從系統 OEM 代碼頁轉換為 SQL Server 代碼頁。
RAW 並不進行從一個代碼頁到另一個代碼頁的轉換;這是最快的選項。
code_page 特定的代碼頁號碼,例如 850。
DATAFILETYPE [ = {'char' | 'native' | 'widechar' | 'widenative' } ]
指定 BULK INSERT 使用指定的默認值執行復制操作。
DATAFILETYPE 值 描述
char(默認值) 從含有字元數據的數據文件執行大容量復制操作。
native 使用 native(資料庫)數據類型執行大容量復制操作。要裝載的數據文件由大容量復制數據創建,該復制是用 bcp 實用工具從 SQL Server 進行的。
widechar 從含有 Unicode 字元的數據文件中執行大容量復制操作。
widenative 執行與 native 相同的大容量復制操作,不同之處是 char、varchar 和 text 列在數據文件中存儲為 Unicode。要裝載的數據文件由大容量復制數據創建,該復制是用 bcp 實用工具從 SQL Server 進行的。該選項是對 widechar 選項的一個更高性能的替代,並且它用於使用數據文件從一個運行 SQL Server 的計算機向另一個計算機傳送數據。當傳送含有 ANSI 擴展字元的數據時,使用該選項以便利用 native 模式的性能。
FIELDTERMINATOR [ = 'field_terminator' ]
指定用於 char 和 widechar 數據文件的欄位終止符。默認的欄位終止符是 \t(製表符)。
FIRSTROW [ = first_row ]
指定要復制的第一行的行號。默認值是 1,表示在指定數據文件的第一行。
FIRE_TRIGGERS
指定目的表中定義的任何插入觸發器將在大容量復制操作過程中執行。如果沒有指定 FIRE_TRIGGERS,將不執行任何插入觸發器。
FORMATFILE [ = 'format_file_path' ]
指定一個格式文件的完整路徑。格式文件描述了含有存儲響應的數據文件,這些存儲響應是使用 bcp 實用工具在相同的表或視圖中創建的。格式文件應該用於以下情況:
數據文件含有比表或視圖更多或更少的列。
列使用不同的順序。
列分割符發生變化。
數據格式有其它的改變。通常,格式文件通過 bcp 實用工具創建並且根據需要用文本編輯器修改。有關更多信息,請參見 bcp 實用工具。
KEEPIDENTITY
指定標識列的值存在於導入文件中。如果沒有指定 KEEPIDENTITY,在導入的數據文件中此列的標識值將被忽略,並且 SQL Server 將根據表創建時指定的種子值和增量值自動賦給一個唯一的值。假如數據文件不含該表或視圖中的標識列,使用一個格式文件來指定在導入數據時,表或視圖中的標識列應被忽略;SQL Server 自動為此列賦予唯一的值。有關詳細信息,請參見 DBCC CHECKIDENT。
KEEPNULLS
指定在大容量復制操作中空列應保留一個空值,而不是對插入的列賦予默認值。
KILOBYTES_PER_BATCH [ = kilobytes_per_batch ]
指定每個批處理中數據的近似千位元組數(KB)。默認情況下,KILOBYTES_PER_BATCH 未知。
LASTROW [ = last_row ]
指定要復制的最後一行的行號。默認值是 0,表示指定數據文件中的最後一行。
MAXERRORS [ = max_errors ]
指定在大容量復制操作取消之前可能產生的錯誤的最大數目。不能被大容量復制操作導入的每一行將被忽略並且被計為一次錯誤。如果沒有指定 max_errors,默認值為 0。
ORDER ( { column [ ASC | DESC ] } [ ,...n ] )
指定數據文件中的數據如何排序。如果裝載的數據根據表中的聚集索引進行排序,則可以提高大容量復制操作的性能。如果數據文件基於不同的順序排序,或表中沒有聚集索引,ORDER 子句將被忽略。給出的列名必須是目的表中有效的列。默認情況下,大容量插入操作假設數據文件未排序。
n
是表示可以指定多列的佔位符。
ROWS_PER_BATCH [ = rows_per_batch ]
指定每一批處理數據的行數(即 rows_per_bacth)。當沒有指定 BATCHSIZE 時使用,導致整個數據文件作為單個事務發送給伺服器。伺服器根據 rows_per_batch 優化大容量裝載。默認情況下,ROWS_PER_BATCH 未知。
ROWTERMINATOR [ = 'row_terminator' ]
指定對於 char 和 widechar 數據文件要使用的行終止符。默認值是 \n(換行符)。
TABLOCK
指定對於大容量復制操作期間獲取一個表級鎖。如果表沒有索引並且指定了 TABLOCK,則該表可以同時由多個客戶端裝載。默認情況下,鎖定行為是由表選項 table lock on bulk load 決定的。只在大容量復制操作期間控制鎖會減少表上的鎖爭奪,極大地提高性能。
注釋
BULK INSERT 語句能在用戶定義事務中執行。對於一個用 BULK INSERT 語句和 BATCHSIZE 子句將數據裝載到使用多個批處理的表或視圖中的用戶定義事務來說,回滾它將回滾所有發送給 SQL Server 的批處理。
許可權
只有 sysadmin 和 bulkadmin 固定伺服器角色成員才能執行 BULK INSERT。
示例
本例從指定的數據文件中導入訂單詳細信息,該文件使用豎杠 (|) 字元作為欄位終止符,使用 |\n 作為行終止符。
BULK INSERT Northwind.dbo.[Order Details]
FROM 'f:\orders\lineitem.tbl'
WITH
(
FIELDTERMINATOR = '|',
ROWTERMINATOR = '|\n'
)
本例指定 FIRE_TRIGGERS 參數。
BULK INSERT Northwind.dbo.[Order Details]
FROM 'f:\orders\lineitem.tbl'
WITH
(
FIELDTERMINATOR = '|',
ROWTERMINATOR = ':\n',
FIRE_TRIGGERS
)
請參見
bcp 實用工具
排序規則
在不同排序規則間復制數據
使用 bcp 和 BULK INSERT
並行數據裝載
sp_tableoption