SQL Server stored procedure that returns a boolean if table exists, c# implementation -


i have created stored procedure takes single argument, name of table, , returns 1 if exists in database, 0 if not. in sql server management studio testing stored procedure works i'd to, i'm having trouble getting value use in c# program.

my options seem executescalar(), executenonquery() or executereader(), none of seem appropriate task, nor can them retrieve stored procedure's result.

i have tried assigning parameter both cmd.parameters.addwithvalue , cmd.parameters.add again no avail.

assuming have stored procedure selects either 0 (table not exist) or 1 (table exist)

create procedure dbo.doestableexist (@tablename nvarchar(100))  begin     if exists (select * sys.tables name = @tablename)         select 1     else         select 0   end 

then can write c# code value - use .executescalar() since you're expecting single row, single column:

// set connection , command using (sqlconnection conn = new sqlconnection("your-connection-string-here")) using (sqlcommand cmd = new sqlcommand("dbo.doestableexist", conn)) {     // define command stored procedure     cmd.commandtype = commandtype.storedprocedure;      // add parameter     cmd.parameters.add("@tablename", sqldbtype.nvarchar, 100).value = "your-table-name-here";      // open connection, execute command, close connection     conn.open();     int result = (int)cmd.executescalar();     conn.close(); } 

now result contain either 0 if table doesn't exist - or 1, if exist.


Comments

Popular posts from this blog

javascript - DIV "hiding" when changing dropdown value -

Does Firefox offer AppleScript support to get URL of windows? -

android - How to install packaged app on Firefox for mobile? -