Har*_* CO 187
我认为使用上述方法之一进行导入是理想的,如果它真的是一个大文件,但您可以使用Excel创建插入语句:
="INSERT INTO table_name VALUES('"&A1&"','"&B1&"','"&C1&"')"
Run Code Online (Sandbox Code Playgroud)
在MS SQL中,您可以使用:
SET NOCOUNT ON
Run Code Online (Sandbox Code Playgroud)
放弃显示所有"受影响的1行"评论.如果你正在做很多行并且它出错了,那么每隔一段时间在语句之间加一个GO
mhn*_*mhn 28
有一个方便的工具,节省了大量的时间
http://tools.perceptus.ca/text-wiz.php?ops=7
你只需要输入表名,字段名和数据 - 选项卡分开并点击Go!
您可以使用以下excel语句:
="INSERT INTO table_name(`"&$A$1&"`,`"&$B$1&"`,`"&$C$1&"`, `"&$D$1&"`) VALUES('"&SUBSTITUTE(A2, "'", "\'")&"','"&SUBSTITUTE(B2, "'", "\'")&"','"&SUBSTITUTE(C2, "'", "\'")&"', "&D2&");"
Run Code Online (Sandbox Code Playgroud)
这比Hart CO的答案更好,因为它考虑了列名并且由于列中的引号而消除了编译错误.最后一列是数值列的示例,没有引号.
小智 5
根据数据库,您可以导出为 CSV,然后使用导入方法。
MySQL - http://dev.mysql.com/doc/refman/5.1/en/load-data.html
PostgreSQL - http://www.postgresql.org/docs/8.2/static/sql-copy.html
使用PowerShell 库中的ConvertFrom-ExcelToSQLInsertImportExcel
NAME
ConvertFrom-ExcelToSQLInsert
SYNTAX
ConvertFrom-ExcelToSQLInsert [-TableName] <Object> [-Path] <Object>
[[-WorkSheetname] <Object>] [[-HeaderRow] <int>]
[[-Header] <string[]>] [-NoHeader] [-DataOnly] [<CommonParameters>]
PARAMETERS
-DataOnly
-Header <string[]>
-HeaderRow <int>
-NoHeader
-Path <Object>
-TableName <Object>
-WorkSheetname <Object>
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).
ALIASES
None
REMARKS
None
EXAMPLE
ConvertFrom-ExcelToSQLInsert MyTable .\testSQLGen.xlsx
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
363440 次 |
| 最近记录: |