我有一些包含单词1951-2015的数据,如果要查找包含单词1951的数据,那么我想使用函数进入数据库,然后folder_id = 1,如果1952然后then folder_id = 2,如果1953然后then folder_id = 3等
代码:
if (nama == "1951")
{
string K2013GUpdate = @"INSERT INTO undangundnag (folder_id,identifier,filename) SELECT 1 + namaFile ,'" + file1.FName +
"' WHERE not exists (select folder_id AND identifier AND filename FROM undangundnag WHERE folder_id=1 and identifier='" + namaFile
AND filename='" + file1.FName)";
K2013GQuery.Step();
}
else if (nama == "1952")
{
string K2013GUpdate = @"INSERT INTO undangundnag (folder_id,identifier,filename) SELECT 2 + namaFile ,'" + file1.FName +
"' WHERE not exists (select folder_id AND identifier AND filename FROM undangundnag WHERE folder_id=2 and identifier='" + namaFile
AND filename='" + file1.FName)";
K2013GQuery.Step();
}
else if (nama == "1953")
{
string K2013GUpdate = @"INSERT INTO undangundnag (folder_id,identifier,filename) SELECT 3 + namaFile ,'" + file1.FName +
"' WHERE not exists (select folder_id AND identifier AND filename FROM undangundnag WHERE folder_id=3 and identifier='" + namaFile
AND filename='" + file1.FName)";
K2013GQuery.Step();
}
如何使用if语句自动将数据输入数据库而不使用if一一对应?
答案 0 :(得分:0)
如果您的数据驻留在1952年至2015年的固定范围内,则可以在该范围内循环,而无需使用if语句,如下所示:
SqlConnection conn = new SqlConnection();
conn.ConnectionString="data source=*;initial catalog=*;User ID=*;Password=*";
conn.Open();
SqlCommand sqlcmd = new SqlCommand(SqlString, conn);
SqlDataReader dr = sqlcmd.ExecuteReader();
如果您想在1952-2015年之间传递特定数据并想要根据您的要求生成folder_id,则可以执行以下操作:
int folder_id=0;
for(int i=1951;i<=2015;i++){
folder_id++;
// if you want to execute your query for all the values in the range then you can omit this 'if' statement and write query inside loop.
if(nama==i){
// write your query here with the folder_id
break;
}
}