Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 从Excel导入数据向导会自动检测数据类型_Sql_Sql Server_Excel_Sql Import Wizard - Fatal编程技术网

Sql 从Excel导入数据向导会自动检测数据类型

Sql 从Excel导入数据向导会自动检测数据类型,sql,sql-server,excel,sql-import-wizard,Sql,Sql Server,Excel,Sql Import Wizard,您好,我正在尝试将数据从excel文件(xls)导入到新的SQL表,因此我使用导入和导出数据32位。当我加载excel文件时,它会自动检测列的数据类型。e、 g.当我尝试将float更改为nvarchar 我明白了: 找到2个未知的列类型转换 您已选择跳过1个可能丢失的列转换 您已选择跳过3个安全列转换 我不允许继续出口 在尝试导入数据类型时,是否有任何方法可以更改这些数据类型 谢谢你抽出时间 这些数据在excel中设置为text数据类型 excel中某列的示例数据: 5859031783 5

您好,我正在尝试将数据从excel文件
(xls)
导入到新的
SQL表
,因此我使用
导入和导出数据32位
。当我加载excel文件时,它会自动检测列的数据类型。e、 g.当我尝试将
float
更改为
nvarchar

我明白了:

找到2个未知的列类型转换 您已选择跳过1个可能丢失的列转换 您已选择跳过3个安全列转换

我不允许继续出口

在尝试导入数据类型时,是否有任何方法可以更改这些数据类型

谢谢你抽出时间

这些数据在excel中设置为
text
数据类型 excel中某列的示例数据:

5859031783

5851130582

8811014190
这就是我得到的:


选择Excel工作表中的列,并将数据类型更改为文本

然后转到您的sql server open import-export向导,执行选择源数据和bla-bla的所有步骤当您到达
映射列
时,它将选择
浮点
数据类型默认情况下,您必须将其更改为
NVARCHAR(N)
在我的测试中,我将其更改为NVARCHAR(400),它给了我一个警告,当我将数据从一个datatyep转换到另一个datatyep时,可能会丢失一些数据

当您进入
数据类型映射
页面时,请确保选中转换复选框。并在适当情况下停止故障过程

经过所有这些步骤,最终在目标表中获得了我的数据,并显示了相同的
警告
,即我已将一些数据转换为bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla,因为microsoft担心太多:)

Sql Server表中的最终数据

╔═══════╦════════════╦═════════╦════════════════╦══════════════╗
║ Name  ║    City    ║ Country ║     Phone      ║ Float_Column ║
╠═══════╬════════════╬═════════╬════════════════╬══════════════╣
║ Shaun ║ London     ║ UK      ║ 04454165161665 ║   5859031783 ║
║ Mark  ║ Newyork    ║ USA     ║ 16846814618165 ║   8811014190 ║
║ Mike  ║ Manchester ║ UK      ║ 04468151651651 ║   5851130582 ║
╚═══════╩════════════╩═════════╩════════════════╩══════════════╝

我非常不喜欢SQL Server导入/导出向导


不是直接的回答,但我发现,按照向导的最佳猜测进行操作,然后在SQL Server中修复表规范,就不那么令人沮丧了。

Excel工作表中该列的数据类型在导出之前,请尝试将其设置为
Text
。@M.Ali我尝试过,但仍然遇到同样的问题。您能显示一些示例数据吗?@M.Ali我更新了我的数据问题。问题是,它会自动将这些数字格式化为浮点数,以便将其格式化,例如,
3.35E+03
@M.Ali我尝试使用excel
text
中的
float
数据类型运行它,得到了与excel中相同的值。现在一切都好了!非常感谢。