Xpsql.cpp: Error 1314 From CreateProcessAsUser On Line 636
Jan 4, 2005
Hi,
I want to give a non system administrator account permission to execute xp_cmdshell.
I'm testing it by running this:
xp_cmdshell 'dir c:'
and getting this error
Msg 50001, Level 1, State 50001
xpsql.cpp: Error 1314 from CreateProcessAsUser on line 636
I have a setup a proxy account in SQL Server Agent as instructed - it's the same account that the SQL Server Service is running under.
I've deselected the 'only users with sysadm privilages...' option in SQL Server Agent properties and I've tried granting a variety of permissions to the proxy account based suggestions I've seen on google. It's a domain account which has local admin rights.
Other people seem to have found solutions but none of them have worked for me - any siggestions? SQL Server 2k Std Edn and Windows 2003 Server Std Edn.
Hi! Have a problem to execute xp_cmdshell with a proxy user in MSSQL2005 (9.00.2047.00). The error is:
Msg 15121, Level 16, State 10, Procedure xp_cmdshell, Line 1 An error occurred during the execution of xp_cmdshell. A call to 'CreateProcessAsUser' failed with error code: '1314'.
The proxy user is a local administrator on the sql server machine. The proxy user have €śReplace a process level token€? rights thru the group SQLServer2005MSSQLUSer (http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=627221&SiteId=1).
I have even tried to use a domain administrator as proxy user, but the same error occur.
What is wrong? I have search the internet a lot and found that many people have this problem without any answer.
I am trying to export a table to .CSV file using Sql 2005 BCP utility through .Net web page. I get the following error: " An error occurred during the execution of xp_cmdshell. A call to 'CreateProcessAsUser' failed with error code: '1314'. " I have done following steps: -- Set up proxy for a windows account using command : sp_xp_cmdshell_proxy_account '<winAccount>', '<password>' -- EXEC sp_grantdbaccess '<winAccount>' -- GRANT exec ON xp_cmdshell TO <winAccount> -- BCP command is inside a stored proc, so I run the stored proc as : Create Proc dbo.Export_Table with execute as '<winAccount>' What I am I missing? I can run the stored proc in SQL Managaement studio using that windows account. I don't get the error when I use the Visual Studio Developement Web Server, the export file is created without any problem. I get the error only when I run my .Net web page though IIS. Please help. Thanks
I'll keep trying new threads here... sooner or later, I'm sure an expert Microsoft CLR employee will gladly lend a helping hand!
The pieces:
1. SQL 2005, MS Windows Server 2003, Standard Edition, SP 1
2. .NET 2005/C#
3. Instance of SQL 2005 running locally.
Trigger on local SQL2005 DB table INSERT calls 2 CLR Functions:
1. Retrieve data from SQL2005 DB table and populate local DBF through OLEDB
2. Call external 16-bit application (written in Clipper) that iterates through local DBF records (added from step 1 above) and populates DBF on domain resource.
Step 2 detail:
External 16-bit application is called by CreateProcessAsUser after impersonating token.
THIS IS SUCCESSFUL - IF: I populate SQL2005 DB table using TSQL insert statement. The trigger executes, Step 1 and Step 2 execute perfectly!
THIS IS UNSUCCESSFUL - IF: The SQL2005 DB table is populated by synchronizing SQL Mobile Server database from a SQL Mobile Edition 2005 PDA emulation. The trigger executes. Step 1 executes perfectly. Step 2 executes without exceptions. HOWEVER, the 16-bit application does not execute! Remember, no exceptions. In fact, the result variable returns true from function below:
result = ProcessUtility.CreateProcessAsUser(
hDupedToken,
null,
@"C:MobileDBMobile.exe",
ref sa, ref sa,
false, 0, IntPtr.Zero,
@"C:MobileDB", ref si, ref pi
);
Also, if I Right-click on the Step 2 function in the Server Explorer and click "Execute", it works perfectly. Domain DBF is updated successfully.
So, in short CLR "CreateProcessAsUser" is not doing it's job when the trigger is fired after SQL 2005 DB is populated via replication/sychronization. I would appreciate a response... Thx!
Hello all Trying to delete some data from a SSCE (2005) DB produces the exception: SqlCeException There was an error parsing the query. [ Token line number = 1,Token line offset = 43,Token in error = C] Here is the code I am using
I'm trying to insert some values into an SQL Compact database on a WM6 device but there is something apparently wrong with my SQL statement...
The program is going to allow users to schedule an SMS message to be sent at a certain date and time. I'm using a database to keep track of the scheduled SMS messages. The database has 3 rows: phone number, message, and the date/time to be sent.
I'm guessing it doesn't like how I am trying to get the data from the different text boxes and the DateTimePicker to go inside the SQL command. Does anyone have any ideas on how to fix my SQL command or how to get data from a textbox and DateTimePicker to be inserted into a database a different way?
We are having problems in our project. We have ETL packages we call from our web app that we want to run and the user is the logged in one in the web.
We use Windows Authentication in our web app and we used the CreateProcessAsUser to impersonate the user. <identity impersonate="true"/> is also in our web.config.
We were able to call the dtexec successfully (with the user for the process as the logged in the web -- thus impersonation was successful.)
But, a problem arises when we use Windows Authentication for the connection of the ETL to the db (SQL Server). When we run the ETL on our local machine using dtexec/dtexecui, it works fine.
But when we ran it in our server, it fails. According to the event logs, it can't connect to the db server even though impersonation is successful.
Btw, the client, web server, db server are three different machines.
:error @ECHO An error occured in [%errorLevel%] echo [%errorLevel%] > %1
GOTO EXIT
if there is an error, I print the errorlevel in a txt file wich is a parameter in the command (%1)
What I want is: instead of sending the %errorlevel% to the txt, I want to send the error description but I don't know the variable that keeps the error description.
from dbo.ALM_USERS ALM, dbo.PeopleViewPV, dbo.corp_emp_ids AD, dbo.ALM_USERS ACE
where cast(ALM.USR_login as int)= PV.EmployeeID -- PV and ALM.USR_login = CAST(AD.employeeid AS varchar)---AD and ALM.USR_login = ACE.chdata ----ACE AND ALM.USR_login NOT IN ('BTGWC1', 'DMADMIN', 'IFILL', 'TESTUSER', 'WTDEV06', 'XELOPERATOR', 'XELSELFREG', 'XELSYSADM') AND ALM.USR_STATUS = 'Disabled')
i have a huge stored proc which has about 8-9 cursors which move data from a few temp tables to the final tables...and also do lots of calculations in between..
anytime there is an error in the stored proc i have an error page which looks like this
********************** Server Error in '/WebApplication3' Application. --------------------------------------------------------------------------------
a very lengthy page...the numbers are prbly due to the print stmts of the results of some calculations... but my q is..is there any way to return the xact line number where the error occured in the stored proc instead of these infinite list of numbers...its taking pretty long time to go through the entire stored proc to isolate the error...
--------------- Line 1: Incorrect syntax near '='.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.SqlClient.SqlException: Line 1: Incorrect syntax near '='.
Source Error:
Line 40: Dim adpt As New SqlDataAdapter("SELECT * FROM SMS_student_class_master WHERE" & _ Line 41: "stud_id=" & sid, con) Line 42: adpt.Fill(ds, "SMS_student_class_master") Line 43: txt.Text = ds.Tables.Item("roll_no").ToString Line 44: con.Close()
Hi all, i have an insert function using stored procedure with parameters. At some point while assigning parameters i make a casting problem but all i get is: String was not recognized as a valid Boolean. how can i find the exact line causing the error? thank you -shane
Hi, I have a problem with a report in SSRS 2005. I tried to add some custom code to a report. The code is absolutely simple and correct. But when trying to show the report the debugger shows the following error message: error [BC30494] Line is too long.
When I remove the code the report works again.
The code is about 12 words and could not be the problem.
SELECT @Query = 'IF EXISTS (SELECT * FROM sys.triggers WHERE object_id = OBJECT_ID(N''[dbo].[DEL_' + UPPER(@Table_Name) + ']'')) DROP TRIGGER [dbo].[DEL_' + UPPER(@Table_Name) + ']' EXEC(@Query)
SELECT @Table_Desc = (SELECT a.value FROM sys.extended_properties a, sys.tables b WHERE a.major_id = b.object_id AND a.minor_id = 0 AND a.name = 'MS_DESCRIPTION' AND b.name = @Table_Name)
SELECT @Query = '''CREATE TRIGGER [DEL_' + UPPER(@Table_Name) + '] ON dbo.' + @Table_Name + ' FOR DELETE AS
EXEC(''''IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N''''''''[dbo].[Temp_PrimKey]'''''''') AND type in (N''''''''U'''''''')) DROP TABLE [dbo].[Temp_PrimKey]'''')
SELECT K.COLUMN_NAME INTO Temp_PrimKey FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS T INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE K ON T.CONSTRAINT_NAME = K.CONSTRAINT_NAME WHERE T.CONSTRAINT_TYPE = ''''PRIMARY KEY'''' AND T.TABLE_NAME = ''''' + @Table_Name + '''''
EXEC(''''IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N''''''''[dbo].[Temp_Value]'''''''') AND type in (N''''''''U'''''''')) DROP TABLE [dbo].[Temp_Value]'''')
EXEC(''''CREATE TABLE [dbo].[Temp_Value]( [PValue] [VARCHAR](max) NOT NULL ) ON [PRIMARY]'''')
EXEC(''''IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N''''''''[dbo].[Temp_Deleted]'''''''') AND type in (N''''''''U'''''''')) DROP TABLE [dbo].[Temp_Deleted]'''')
SELECT * INTO Temp_Deleted FROM deleted
DECLARE Curs_PrimKey CURSOR FOR SELECT * FROM Temp_PrimKey
OPEN Curs_PrimKey FETCH NEXT FROM Curs_PrimKey INTO @P_Key WHILE @@FETCH_STATUS = 0 BEGIN EXEC(''''INSERT INTO Temp_Value SELECT ''''+ @P_Key + '''' FROM Temp_Deleted'''') SELECT @P_Key_Value = (SELECT PValue FROM Temp_Value) EXEC(''''DELETE FROM Temp_Value'''') SELECT @P_Key_Insert = @P_Key_Insert + @P_Key + '''' = '''' + @P_Key_Value + '''', '''' FETCH NEXT FROM Curs_PrimKey INTO @P_Key END CLOSE Curs_PrimKey DEALLOCATE Curs_PrimKey
EXEC(''''IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N''''''''[dbo].[Temp_Deleted]'''''''') AND type in (N''''''''U'''''''')) DROP TABLE [dbo].[Temp_Deleted]'''')
EXEC(''''IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N''''''''[dbo].[Temp_Value]'''''''') AND type in (N''''''''U'''''''')) DROP TABLE [dbo].[Temp_Value]'''')
INSERT INTO TLOG(Log_Date, Log_Reference, Log_Comment) VALUES (GETDATE(), @P_Key_Insert, @Comment) ''' --PRINT @Query EXEC(@Query) Problem is when I run it gives error:
Msg 102, Level 15, State 1, Line 1Incorrect syntax near 'CREATE TRIGGER [DEL_EMPLOYEE] ON dbo.Employee FOR DELETEAS DECLARE @Old_Value VARCHAR(8000)DECLARE @New_Value VARCHA'.
If I print the @Query and run it in a query analyzer using the statement EXEC it worked. It's giving me headache, this supposed to be a simple exec statement. Please advise. Thanks.
Hi, for some AP issue, the file I upload must be without the line feed/carriage return in the last line. for example:
original fixed-length file (exported from SSIS) line NO DATA 1 AA123456 50 60 2 BB123456 30 40 3 CC123456 80 90 4 <-- with line feed/carriage return in the last line
The file format that AP request. The file only has 3 records, so it should end in the third line. line NO DATA 1 AA123456 50 60 2 BB123456 30 40 3 CC123456 80 90
Should I use script component to do it ? I am new for VB . Anyone would help me ?
I need the Trend line for the following data in Line chart they are the following data. The following are the graph are my output and i need the trend line for these Key_gap value.
This is the link [URL] ....
I need the same trend line for the Bar-Chart in SSRS 2005.
I hope I'm posting this in the correct forum (forgive me if I'm not) since I'm not sure if this is an issue with inserting an item into a db or the processing of what I get out of it. I wrote a basic commenting system in which someone my post a comment about something written on the site. I wanted to keep it very simple, but I at least want the ability for a user to have newlines in their comment without having to hardcode a <br /> or something like that. Is there a way for me to detect a newline if someone, for example, is going to their next paragraph? Let me know if you need a better explanation. Thanks in advance!
G'day everyoneThat's a space between the ticks.It's all part of a longer script but seeing as the failure occurs online 1if exists (select * from dbo.sysobjects where id =object_id(N'[dbo].[config]') and OBJECTPROPERTY(id, N'IsUserTable') =1)drop table [dbo].[config]GOThat's three lines only. Does it matter that they're in Unicode?Any ideas?Kind regards,Bruce M. AxtensSoftware EngineerStrapper Technologies
IPB WARNING [2] mysql_connect() [function.mysql-connect]: Too manyconnections (Line: 131 of /ips_kernel/class_db_mysql.php)There appears to be an error with the database.You can try to refresh the page by clicking here.Error ReturnedSQL error: Too many connectionsSQL error code:Date: Saturday 17th of June 2006 02:44:59 PMWe apologise for any inconvenienceWhy I am getting this error?
I have a flat file with several rows of entire type in one of the rows a string comes and when it goes away to guard in the BD it falls, since I can know in that this row of the flat file the string?????
Msg 6260, Level 16, State 1, Line 1 An error occurred while getting new row from user defined Table Valued Function : System.InvalidOperationException: Invalid attempt to FieldCount when reader is closed. System.InvalidOperationException: at System.Data.SqlClient.SqlDataReaderSmi.get_FieldCount() at System.Data.Common.DbEnumerator.BuildSchemaInfo() at System.Data.Common.DbEnumerator.MoveNext()
Here is my code:
using System; using System.Data; using System.Data.Common; using System.Data.SqlTypes; using System.Data.SqlClient; using Microsoft.SqlServer.Server; using System.Collections;
public static class UserDefinedFunctions { [Microsoft.SqlServer.Server.SqlFunction(FillRowMethodName = "rowfiller",DataAccess=DataAccessKind.Read,TableDefinition = "ActID int, ActName nvarchar(50), ActCreatorID int,ActDesp nvarchar(200),ActCreateDate datetime,ActModifyDate datetime, ActStartDate datetime, ActEndDate datetime, Status int, Cost int")] public static IEnumerable Func_GetSchCatActivityIDTable(int CatActivityID) { using (SqlConnection connection = new SqlConnection("context connection=true")) { string sqlstring = "select * from Activity where CatActivityID=@CatActivityID;";
connection.Open(); SqlCommand command = new SqlCommand(sqlstring, connection); command.Parameters.AddWithValue("@CatActivityID", CatActivityID);
} } [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft Performance","CA1811:AvoidUncalledPrivateCode")] public static void rowfiller(Object obj, out SqlInt32 ActID, out SqlString ActName, out SqlInt32 ActCreatorID, out SqlString ActDesp, out SqlDateTime ActCreateDate, out SqlDateTime ActModifyDate, out SqlDateTime ActStartDate, out SqlDateTime ActEndDate, out SqlInt32 Status, out SqlInt32 Cost, ) {
SqlDataRecord row = (SqlDataRecord)obj; int column = 0;
ActID = (row.IsDBNull(column)) ? SqlInt32.Null : new SqlInt32(row.GetInt32(column)); column++; ActName = (row.IsDBNull(column)) ? SqlString.Null : new SqlString(row.GetString(column)); column++; ActCreatorID = (row.IsDBNull(column)) ? SqlInt32.Null : new SqlInt32(row.GetInt32(column)); column++; ActDesp = (row.IsDBNull(column)) ? SqlString.Null : new SqlString(row.GetString(column)); column++; ActCreateDate = (row.IsDBNull(column)) ? SqlDateTime.Null : new SqlDateTime(row.GetDateTime(column)); column++; ActModifyDate = (row.IsDBNull(column)) ? SqlDateTime.Null : new SqlDateTime(row.GetDateTime(column)); column++; ActStartDate = (row.IsDBNull(column)) ? SqlDateTime.Null : new SqlDateTime(row.GetDateTime(column)); column++; ActEndDate = (row.IsDBNull(column)) ? SqlDateTime.Null : new SqlDateTime(row.GetDateTime(column)); column++; Status = (row.IsDBNull(column)) ? SqlInt32.Null : new SqlInt32(row.GetInt32(column)); column++; Cost = (row.IsDBNull(column)) ? SqlInt32.Null : new SqlInt32(row.GetInt32(column)); column++; }
};
Can anyone tell me what I am doing wrong? Many thanks
We have a line graph which plots the actual data points (x,y), everything is working fine with this graph. Now we need to add a trend line to this existing graph after going thro. the articles we came to know that there is no direct option in SSRS to draw a trend line. So we need to calculate the trend values ourselves which we need to plot as atrend line. This trend line is similar to the trend line which comes in Excel chart, do anyone know how to calculate the trend values from the actual data points. We got through several formulas, but were not clear, have anyone tried out exactly the same, if so please help us out by providing an example to calculate the trend values.
I have a line graph which shows positive and negative values. Is it possible to have the line one color when its negative and another when its positive?
we config our SAP system to use SQL Server 2005 database mirror. but the mirror server hang by accident, after restart mirror server,the server return to normal,but the mirror can't be resume.
ALTER DATABASE R3P SET PARTNER resume
the error is: Msg 1447, Level 16, State 21, Line 1 ALTER DATABASE "R3P" command cannot be executed until both partner server instances are up, running, and connected. Start the partner and reissue the command.
In one of my SSIS package (which connect to DB2) i save the DB2 username and password in SSIS packge itself by using option "EncryptAllWithPassword". When I try to run the packge using dtexecui.exe it works perfectly fine. It prompts me for package password and then run fine.
Now I am trying to run it using command line dtxece.exe and i get fooolwoing error. Please suggest and help!!! DTExec.exe /FILE C:pkgDB2Load.dtsx /CONFIGFILE C:ConfigpkgConfigMaster.dtsConfig /Decrypt mypassword /CHECKPOINTING OFF /REPORTING EWCDI
Error Message: ---------------------- Description: An OLE DB error has occurred. Error code: 0x80040E21. An OLE DB record is available. Source: "IBM OLE DB Provider for DB2 Servers" Hresult: 0x80040E21 Description: " SQL30082N Attempt to establish connection fa iled with security reason "17" ("UNSUPPORTED FUNCTION"). SQLSTATE=08001 "
I have the following SQL query (SQL 2005). Its basically retrieving some values using simple joins. However there appears to be a problem with the LEFT OUTER JOIN: "LEFT OUTER JOIN DDDispatchedOrder ON (OrderLineItemTransaction.OrderLineItemTransaction ID = DDDispatchedOrder.OrderItemTransactionID) " When I try to compile the code i Get : Msg 4104, Level 16, State 1, Line 1 The multi-part identifier "OrderLineItemTransaction.OrderLineItemTransactionI D" could not be bound.
Any help would be appreciated.
Cheers Bal
SELECT ord.orderDate, cc.forename + ' ' + cc.surname person, prod.description, oli.noofitems, deladdr.housenameno + ' ' + deladdr.addressLine1 + ' ' + deladdr.addressLine2 + ' ' + deladdr.city + ' ' + deladdr.postcode + ' ' + deladdr.county + ' ' + deladdr.country deladdress FROM product prod, OrderLineItem oli, [Order] ord, OrderTransaction ordT, OrderLineItemTransaction oliT, CustomerContact cc, Customer cust, DDDispatchedOrder dd, address deladdr, address invaddr LEFT OUTER JOIN DDDispatchedOrder ON (OrderLineItemTransaction.OrderLineItemTransaction ID = DDDispatchedOrder.OrderItemTransactionID) WHERE prod.productID = oli.productID:eek: AND ord.orderID = oli.orderID AND ord.orderID = ordT.orderID AND oliT.orderlineitemID = oli.orderlineitemID AND cc.customercontactID = ord.customercontactID AND cc.customerID = cust.customerID AND ord.invoiceaddressID = invaddr.addressID AND ord.deliveryaddressID = deladdr.addressID AND ordT.dispatchTypeID = 2
Hello everyone, I'm having an issue with dynamically setting the Send Mail task's to field to decent sized recipient list(approx 15 email addys). The strange thing is that this same package works fine if I'm using a list of say 4 email addys. I have double checked everything I can think of....list is seperated by semicolons, each address looks good....and have ran script tasks to check my variables along the path of the package but so far have not found the reason. The error I get is below:
"The specified string is not in the form required for an e-mail address"
Also of note, these addresses are being populated from a table, that is then setting the To string of the send mail task via a seperate variable...that variable being populated from a foreach loop. Again, all of this works fine with a smaller recipient list. Any ideas?
The only thing I can think of right now is to run the send mail task within the foreach loop...but then I'll be sending a seperate email for each address and would like to avoid that if possible.