能否把TEXT文本中以TAB键分隔的字符串直接写入数据表中.(50分)

  • 主题发起人 主题发起人 ccweifen
  • 开始时间 开始时间
C

ccweifen

Unregistered / Unconfirmed
GUEST, unregistred user!
好像说用read 或readln可以,可我总是出错,说是类型不匹配.
 
好象不能直接读出来,只能先读到一个变量里,然后在手工分开
 
我没读出来过,我用读到“#9”来区别是否读到了“Tab”
 
我看过上点资料说是可以的,
他是这么说的:
格式化字符串之间的分隔符应读入到一个临时变量中,而字符串与数值、数值与数值间的分隔符读入时会自动识别剔除。对如下一行数据:
Mon 12:10 40 50
定义
var
Day: string[3] ;
Time: string[5] ;
Num1, Num2: Integer ;

则须用如下的read 语句读入:
read ( TextFileVar , Day , c , Time , Num1 , Num2 ) ;
C为一个临时字符变量。

可我怎么试也不行
 
sql server可以直接导入。
 
是不是有个叫MSBCP的东东能直接转.在哪儿?怎么用?
 
不用这么麻烦,用TAB分割的文本文件是标准的“文本数据库格式”,你
用TEXT ODBC Driver建一个ODBC的数据源,然后直接导入(比如BatchMove)就可以了。
 
ccweifen>>是不是有个叫MSBCP的东东能直接转.在哪儿?怎么用?

只要装了SQL SERVER自然就有了,比如我的机器里是C:/MSSQL7/Binn/bcp.exe(我用的SQL SERVER7.0),
这是一个命令行程序,想省事的话你可以在程序里生成一个bat文件然后执行(别让用户看到:)
举个简单的例子:
bcp.exe myDatabase.dbo.myTable in "D:/PROGRAM/BCP/data/myTable_text.txt" -c -S myComputerName -U sa -P
具体用法查SQL SERVER的在线帮助吧。
 
多人接受答案了。
 
后退
顶部