我创建了一个这样的全局临时表 -
CREATE TABLE ##BigTable
(Nos varchar(10) null)
Run Code Online (Sandbox Code Playgroud)
然后尝试重命名Nos列,如下所示 -
EXEC sp_RENAME '##BigTable.Nos' , 'Numbers', 'COLUMN'
Run Code Online (Sandbox Code Playgroud)
我收到了错误 -
Either the parameter @objname is ambiguous or the
claimed @objtype (COLUMN) is wrong.
Run Code Online (Sandbox Code Playgroud)
为什么会发生这种情况,我该如何解决这个问题呢?
EXTRA与问题不完全相关的东西,但供参考.
我想添加这个 - 我尝试使用像这样的完全限定名称创建全局临时表 -
CREATE TABLE [NotMyTempDataBase].[dbo].[##BigTable]
(Nos varchar(10) null)
Run Code Online (Sandbox Code Playgroud)
然后,我尝试使用 - 重命名它 -
EXEC tempdb.sys.sp_rename N'[NotMyTempDataBase].[dbo].[##BigTable].Nos',
N'Numbers', N'COLUMN';
Run Code Online (Sandbox Code Playgroud)
错误 -限定的@oldname引用当前数据库以外的数据库.
这是错的.我意识到临时表是在系统数据库tempdb中创建的,即使您在创建它时指定了另一个DB名称.
改用它 -
CREATE TABLE [tempdb].[dbo].[##BigTable]
(Nos varchar(10) null)
Run Code Online (Sandbox Code Playgroud)
--SQL服务器消息:忽略数据库名称'tempdb',引用tempdb中的对象.
EXEC tempdb.sys.sp_rename N'[tempdb].[dbo].[##BigTable].Nos',
N'Numbers', N'COLUMN';
Run Code Online (Sandbox Code Playgroud) 我创建了FTP代码来传输文件.此代码工作正常,但它有时会导致错误500.确切的错误是 -
Error: System.Reflection.TargetInvocationException: Exception has
been thrown by the target of an invocation.
---> System.Net.WebException: The remote server returned an error:
(500) Syntax error, command unrecognized.
at System.Net.FtpWebRequest.CheckError()
at System.Net.FtpWebRequest.SyncRequestCallback(Object obj)
at System.Net.CommandStream.Abort(Exception e)
at System.Net.FtpWebRequest.FinishRequestStage(RequestStage stage)
at System.Net.FtpWebRequest.GetRequestStream()
at ST_772dn22cj49ndfddatee.csproj.ScriptMain.Main()
--- End of inner exception stack trace ---
Run Code Online (Sandbox Code Playgroud)
我注意到加载最大文件时出现错误,即大约290 KB.所有其他文件都不到这个,我也没有例外.我不知道为什么会这样.有人可以告诉我为什么吗?
顺便说一句,如果您发现我的代码或逻辑错误有一些改进空间,那么请同时提及.我不是真的在寻找代码评论,但欢迎.
public void Main()
{
Boolean conditions = true;
if(conditions == true)
{
string fileLocation = "my windows directory";
string fileName = "fileName.extension";
string ftpFolder = @"/ftpFolder/";
Boolean …
Run Code Online (Sandbox Code Playgroud)