Ⅰ 如何將文本文件中數據導入到sql表中
1、創建 load.ctl 文件:
在任意文件夾下創建load.ctl 文件,用編輯器打開 load.ctl 文件,並寫入以下代碼:
load data
CHARACTERSET UTF8
infile "D:importdatadatafiledata.txt"
append
into table table_name
fields terminated by '|'
trailing nullcols
(
id,
mobile
)
2、運行 load.ctl 文件:打開 cmd ,切換到 load.ctl 文件目錄下,運行以下命令:
sqlldr suncrs/suncrs@ubuat control=load.ctl log=log.log
suncrs為用戶名和密碼,ubuat為資料庫名
(1)sql從txt文件導入數據擴展閱讀:
load.ctl代碼解析:
第二行指定編碼(文本文件編碼)。
第三行指定要導入的文件data.txt的路徑。
第五行指定導入的表(以上l例子表名為:table_name)。
第六行表示欄位分隔符。
最後括弧內填寫欄位(注意順序),欄位名寫目標表的欄位名。
Ⅱ 如何將txt文件導入到sql2008資料庫
第一步,打開導入導出工具(SQL Server程序文件夾下)。(win7 32位系統下SQL自帶,64位系統下好像要裝)
第二步,選擇源文件的格式。這里txt格式文件選擇平面文件源。
第三步,瀏覽選擇文件源,其中代碼頁要改成簡體中文。另外在列中可查看導入的數據列是否正確,在高級中可編輯欄位名。
第四步,選擇目標伺服器和資料庫。就是確定數據文件要導入到哪一個一個伺服器的哪一個資料庫中。
第五步,選擇目標表,打開編輯映射。默認時以文件名建立新表。
第六步,編輯映射。把數據對應導入資料庫各欄位中!若是目標表是新建的,那麼要編輯資料庫中的個欄位名以及數據類型。
那麼做完這些後只要數據源沒有問題,單擊下一步……就可以搞定了。
注意:導入數據時要注意的地方。在導入txt格式的文件時首先需要注意數據的排列。每一列之間用統一的分隔符隔開,刪除無關的行信息。另外需要注意的是,txt格式的文件導入時空格也是被讀取的,所以要刪除空格。
Ⅲ 如何用sql語句將一個文件夾下的所有txt文件導入到資料庫中急!在線等
使用場景:
比如將
C:\Test\
目錄下的所有
txt文件內容
導入到
Table_1
中
--定義臨時表,用於存放獲取的文件名稱
CREATE
TABLE
#files
(name
varchar(200)
NULL,
sql
varchar(7000)
NULL)
--獲取文件名稱,存放在#files
INSERT
#files(name)
exec
master..xp_cmdshell
'dir
c:\test
/b'
--刪除不要的文件名稱
DELETE
#files
WHERE
coalesce(name,
'')
NOT
LIKE
'Code%'
--插入需要
導入文件內容的
命令SQL,需要修改
Table_1(改為導入的Table)和文件路徑
UPDATE
#files
SET
sql
=
'BULK
INSERT
Table_1
FROM
'''
+
'C:\Test\'+name
+
'''
WITH
('
+
'DATAFILETYPE
=
''char'',
FIELDTERMINATOR
=
''\t'',
'
+
'ROWTERMINATOR
=
''\n'')'
--開始執行導入
DECLARE
@sql
varchar(8000)
DECLARE
cur
CURSOR
STATIC
LOCAL
FOR
SELECT
sql
FROM
#files
OPEN
cur
WHILE
1
=
1
BEGIN
FETCH
cur
INTO
@sql
IF
@@fetch_status
<>
0
BREAK
EXEC(@sql)
END
DEALLOCATE
cur
主要分為讀取文件夾下所有文件和導入文件內容兩部分
--讀取文件夾下所有文件
declare
@files
table
(ID
int
IDENTITY,
FileName
varchar(100))
insert
into
@files
execute
xp_cmdshell
'dir
c:\test
/b'
select
'c:\'+
[FileName]
AS
FILEPATH
INTO
#temp
from
@files
SELECT
*
FROM
#temp
--導入文件內容
BULK
INSERT
dbo.Table_1
FROM
#temp
WITH
(
ROWTERMINATOR
='\n'
)
還需要開啟
/*****
Step
1
開啟
xp_cmdshell
Use
Master
GO
EXEC
master.dbo.sp_configure
'show
advanced
options',
1
RECONFIGURE
WITH
OVERRIDE
GO
EXEC
master.dbo.sp_configure
'xp_cmdshell',
1
RECONFIGURE
WITH
OVERRIDE
GO
*******/
參考:
http://social.msdn.microsoft.com/Forums/sqlserver/en-US/47c8edc1-8cad-4a24-a09a-3fc0c943325c/bulk-insert-multiple-files-tsql
Ⅳ 如何把TXT文件數據導入MySQL資料庫
具體操作步驟如下:
1、首先打開Navicat軟體,連接到資料庫進入需要導入的資料庫:
Ⅳ c#快速把txt文件導入sql
建議這樣試試看:
- 使用文件流FileStream來打開txt文件,使用讀取器streamreader來讀取內容
拼接sql語句,將讀取的內容填充到sql語句中,調用方法寫入到資料庫
Ⅵ plsql怎麼把txt數據導入orcal圖例
將文本文件導入Oracle中需要用sqlloader的方式。
1、在資料庫中創建相應的表。
如,文本文件內容為:
create table test
(id int,
name varchar2(10),
sex varchar2(10));
2、在電腦中某路徑下編寫ctrl文件,以c盤data目錄為例,添加如下文本。如,被導入的文件名為load.txt
load data
infile 'load.txt' --被導入文件名
replace into table test
(id char terminated by ',',
name char terminated by ',',
sex char terminated by whitespace)
編寫後,將文件保存成load.ctrl
3、然後打開命令提示符,並進入到文本文件和ctrl文件所在目錄。
4、輸入以下語句,並執行。
1
sqlldr userid=用戶名/密碼@資料庫實例名 control=load.ctl log=load.log
5、導入後,test表中數據如下:
Ⅶ ,如何把txt文本數據導入SQL Server2005資料庫中
/**
導入文本文件
EXEC
master..xp_cmdshell
'bcp
dbname..tablename
in
c:\DT.txt
-c
-Sservername
-Usa
-Ppassword'
/**
導出文本文件
EXEC
master..xp_cmdshell
'bcp
dbname..tablename
out
c:\DT.txt
-c
-Sservername
-Usa
-Ppassword'
或
EXEC
master..xp_cmdshell
'bcp
"Select
*
from
dbname..tablename"
queryout
c:\DT.txt
-c
-Sservername
-Usa
-Ppassword'
導出到TXT文本,用逗號分開
exec
master..xp_cmdshell
'bcp
"庫名..表名"
out
"d:\tt.txt"
-c
-t
,-U
sa
-P
password'
BULK
INSERT
庫名..表名
FROM
'c:\test.txt'
WITH
(
FIELDTERMINATOR
=
';',
ROWTERMINATOR
=
'\n'
)
Ⅷ txt文本文件導入SQL2000資料庫
txt同樣是可以導入到sql
server2000資料庫的
但是
前提是你的txt文件內容是有特定的格式
比如
你要的信息欄位內容必須用特定的符號隔開(默認是逗號)
如
a,b,c
e,f,g
如果這樣的要求滿足的話
然後你
打開sql
server2000
選擇資料庫——>導入數據
顯示導入數據向導-》下一步
在選擇數據源的時候
"數據源"選擇「文本文件」->下一步
選擇行分隔符->下一步
選擇列分隔符。。。。。下一步。。。。完成
Ⅸ 如何把TXT文件中的數據批量導入SQL sever 2000中
如果你的TXT很規范的話
你可以這么做
首先用EXCEL打開你的TXT文件,然後保存為EXCEL的XLS文件
然後利用SQL
2000
的DTS數據導入功能導入資料庫即可。
Ⅹ 如何將TXT文件通過SQL SERVER作業方式定時導入資料庫
下面我們通過以下的簡單的SQL語句即可實現數據的批量導入,代碼如下:
Bulk insert test
From 『C:UsersOliveDesktop est.txt』
With
( fieldterminator=』,』,
rowterminator=』 』
)
備註:1) bulk insert 為Sql server 中一個批量插入的操作
2)test 為上邊定義的表,即我們的數據將要插入的表
3) 『C:UsersOliveDesktop est.txt』為數據源文件所在磁碟上的物理路徑
4)with 相當於一些插入的附屬條件,可以起這里添加一些約束限制條件等
5) fieldterminator=』,』欄位的分割符為」,」一般的txt文本數據源的欄位分隔都為逗號,當然也可以為其他,比如」|」
6) rowterminator=』 』各條信息間的分割符為』 』,一般的txt文本數據源的信息間的分割都是換行符,即一條信息佔一行,也可以用其他格式如:」| 」
原文鏈接:網頁鏈接