网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
3.连接数据库
具体方法可参见:https://jingyan.baidu.com/article/d169e186b0a432436611d8d2.html
4.增删改查
4.1增
/// <summary>
/// 增加数据库内容--设备错误代码表
/// </summary>
/// <param name="sheetName"></param>
/// <param name="str1">本数据库中表示DeviceID</param>
/// <param name="str2">本数据库中表示DeviceErrorCode</param>
public int addData(string sheetName, string str1, string str2)
{
conn.Open();
SqlCommand cmd = new SqlCommand("insert into " + sheetName + " values('" + str1 + "','" + str2 + "')", conn);
try
{
cmd.ExecuteNonQuery();
conn.Close();
}
catch (SqlException e)
{
conn.Close();
return e.Number;
}
return 1;
}
根据数据库内容不同,需要编写不同参数的addData函数以进行重载,是否有更便捷方式。日后跟进。
4.2删
/// <summary>
/// 删出数据库内容
/// </summary>
public void delete(string sheetName,string columnName,string deleteData)
{
conn.Open();//打开数据库
SqlCommand cmd = new SqlCommand("delete from " + sheetName + " where " + columnName + "='" + deleteData + "'", conn);
cmd.ExecuteNonQuery();
conn.Close();//关闭数据库
}
编程时遇到问题:DELECT语句与REFERENCE约束 冲突
解决方法:删除主键表记录时,你可以在建外键时选定外键记录一起级联删除还是拒绝删除。
如图:
4.3改
/// <summary>
/// 更新数据库某值,UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
/// </summary>
/// <param name="sheetName">表名称</param>
/// <param name="columnName1">欲被修改列名称</param>
/// <param name="newValue">新值</param>
/// <param name="columnName2">定位列</param>
/// <param name="targetValue">定位列值</param>
/// <returns></returns>
public int update(string sheetName, string columnName1, string newValue,string columnName2,string targetValue)
{
conn.Open();
SqlCommand cmd = new SqlCommand("update " + sheetName + " set " + columnName1 + "='" + newValue + "' where " + columnName2 + "='" + targetValue + "'", conn);
if (dataExist(sheetName, columnName2, targetValue))
{
try
{
cmd.ExecuteNonQuery();
conn.Close();
}
catch (SqlException e)
{
conn.Close();
return e.Number;
}
return 1;
}
else
{
conn.Close();
return 0;
}
}
/// <summary>
/// 判断数据是否存在于数据库中
/// </summary>
/// <param name="sheetName">表名称</param>
/// <param name="columnName">列名称</param>
/// <param name="data">查找数据名称</param>
/// <returns></returns>
private bool dataExist(string sheetName, string columnName,string data)
{
//conn.Open();//打开数据库
SqlCommand myCmd = new SqlCommand("select count(*) from "+sheetName+" where "+columnName+"='"+data+"'", conn);
//int n = myCmd.ExecuteNonQuery();
int n = int.Parse(myCmd.ExecuteScalar().ToString());
//conn.Close();
if (n > 0)
{
return true;
}
else
{
return false;
}
}
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上鸿蒙开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
的小伙伴深入学习提升的进阶课程,涵盖了95%以上鸿蒙开发知识点,真正体系化!**
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新