请问怎样解决临时表中列名无效的问题? 邹建和朱二等请进! 急啊!

78hgdong 2005-05-03 05:47:09
一、 select * into #temp2 from OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="D:\Excel2005\2005.xls";User ID=Admin;Password=;Extended properties=Excel 5.0;Persist Security Info=false')...[sheet1$]
insert into BBLExcel(ProductNO,productName,specification,price,Quantity,QuantityBook,PL,PW,PH,PackRate,
unit,Volume,summoney) select 货号 as ProductNO,产品名称 as ProductName,产品尺寸 as specification,单价 as price,数量 as Quantity,件数 as QuantityBook,长 as PL,宽 as PW,高 as PH,包装率 as PackRate, 单位 as unit,体积M3 as Volume,总金额 as summoney from #temp2

二、各位好!
我用(select * from #temp2)查询可以正常显示所有数据,这样查询(select 名称,数量 from #temp2 )也能正常显示数据。
但是这样查询(select 货号,单价 from #temp2)时 //数据库类型:MS SQL SERVER
出现下面的错误:
服务器: 消息 207,级别 16,状态 3,行 2
列名 '货号' 无效。
服务器: 消息 207,级别 16,状态 1,行 2
列名 '单价' 无效。
想了好久,不知为什么???帮分析一下TKS!
...全文
509 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
78hgdong 2005-05-03
  • 打赏
  • 举报
回复
Source="D:\Excel2005\2005.xls",是一个固定的EXCEL文件名,现在我想用@EXN来做参数,从DELPHI应用程序里输入2005后,把2005传给@EXN参数(也就是说动态传进EXCEL文件名给@EXN)。
TKS!
78hgdong 2005-05-03
  • 打赏
  • 举报
回复
CREATE PROCEDURE PROCtoExcel
@EXN varchar(250)
AS
-- SET ANSI_NULLS ON
-- SET ANSI_WARNINGS ON
delete from BExcel
select * into #temp1 from OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="D:\Excel2005\2005.xls";User ID=Admin;Password=;Extended properties=Excel 5.0;Persist Security Info=false')...[sheet1$]

再问,Source="D:\Excel2005\2005.xls",如果用@EXN来做EXCEL文件参数名传进来。。如何写啊。Source="D:\Excel2005\???",
chiwei 2005-05-03
  • 打赏
  • 举报
回复
晕!中间有空格?
这个也太明显了吧
chiwei 2005-05-03
  • 打赏
  • 举报
回复
那肯定是你的字段'货号'和'单价'前面或后面有空格,仔细看看!
78hgdong 2005-05-03
  • 打赏
  • 举报
回复
谢谢上面两位的参与,不好意思啊,原来select 货 号 ,单 价 from #temp2 查询空格的问题引起,加个空格在“货 号 ,单 价”就行了,已经解决。
就等着邹建和朱二进来拿分了!
78hgdong 2005-05-03
  • 打赏
  • 举报
回复
TO: mschen(Visual【陈】)
按你这样查询也不行:select [货号],[单价] from #temp2
78hgdong 2005-05-03
  • 打赏
  • 举报
回复
select * from #temp2
的时候字段里有'货号'和'单价啊,可以正常显示有'货号'和'单价‘的数据/

select 货号,单价 from #temp2 这样查询就不行
chiwei 2005-05-03
  • 打赏
  • 举报
回复
select * from #temp2
的时候字段里有'货号'和'单价'吗?
mschen 2005-05-03
  • 打赏
  • 举报
回复
这样试试呢?

select [货号],[单价] from #temp2
78hgdong 2005-05-03
  • 打赏
  • 举报
回复
select * into #temp2 from OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="D:\Excel2005\2005.xls";User ID=Admin;Password=;Extended properties=Excel 5.0;Persist Security Info=false')...[sheet1$] //可以插入数据到临时表#temp2了,

1. select * from #temp2 和 select 名称,数量 from #temp2 //执行查询正常,可以显示数据

2. select 货号,单价 from #temp2 //当执行这个查询就不正常,出现了下面的错误:
服务器: 消息 207,级别 16,状态 3,行 2
列名 '货号' 无效。
服务器: 消息 207,级别 16,状态 1,行 2
列名 '单价' 无效。
内容概要:本文详细介绍了MySQLInnoDB存储引擎的逻辑存储结构及其表分区技术。InnoDB的逻辑存储单元由高到低依次为表空间、段、区、页和行,其表空间包括系统表空间、独立表空间、通用表空间、Undo表空间和临时表空间,每种表空间具有不同的用途和管理方式。文章进一步讲解了表分区的概念与类型,包括RANGE、LIST、HASH、KEY以及多字段COLUMNS分区,阐述了分区的优势如提升查询性能、便于数据维护、支持跨物理设备存储等,并列举了实际SQL操作示例,帮助理解分区表的创建、修改、删除及重组等操作。同时指出了分区的限制条件,如最大分区数量、主键约束要求等。; 适合人群:具备一定MySQL数据库基础,从事数据库开发、运维或架构设计的技术人员,尤其是工作涉及大数据量表管理与性能优化的1-3年经验研发人员。; 使用场景及目标:①深入理解InnoDB存储机制,优化数据库物理结构设计;②掌握表分区技术,应用于海量数据存储与高效查询场景,如日志系统、订单系统的时间分区设计;③通过分区实现数据归档、快速删除历史数据、提升查询性能等运维目标; 阅读建议:学习时应结合MySQL实际环境动手实践文提供的SQL命令,重点关注表空间管理和分区策略的选择,理解其对性能和维护的影响,并注意分区使用的限制条件以避免设计失误。
内容概要:本文系统介绍了GitHub Copilot的实战使用技巧,涵盖其核心功能、提示工程、上下文管理、自定义配置及常见误区。文章强调Copilot不仅是代码补全工具,更是覆盖软件开发全生命周期的AI编程助手,重点讲解如何通过上下文工程、提示词结构化、斜杠命令与聊天参与者等方式提升代码生成质量,并结合实战案例展示在测试生成、代码重构、调试、文档编写等场景的高效应用。同时指出Copilot的局限性,倡导“人为主导、AI辅助”的协作模式,强调代码审查与安全合规的重要性。; 适合人群:具备一定编程经验,希望提升开发效率的个人开发者、团队工程师及技术管理者,尤其是正在使用或计划引入AI编程工具的研发人员。; 使用场景及目标:①掌握Copilot在测试生成、代码解释、重构优化、调试排错等方面的高级用法;②学会构建高质量提示词与自定义指令,使AI输出更贴合项目规范;③规避常见使用陷阱,实现安全、可控、高效的AI辅助开发。; 阅读建议:此文档兼具理论指导与实操示范,建议结合实际开发环境边学边练,重点关注提示工程、上下文管理与自定义指令配置,持续迭代优化使用方式,并在团队建立统一的AI编码规范与审查机制。

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧