C#如何读取.accdb中数据

现有access的.accdb文件(两列数据),用C#如何将每一列数据分别存入数组?

1个回答

这个简单,开两个数组,用 datareader 读一次,分别添加进去。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
c# 代码怎么实现access数据库文件导入oracle数据库
怎么用c#代码将.accdb或者.mdb数据库导入Oracle数据库?数据量很大,不能读一条记录插入一条记录
asp.net(C#)注册页面输入的数据输入Access数据库
使用的工具是VS2010,Access2010 错误提示:在 ConnectionString 中未指定 OLE DB 提供程序。示例为:“Provider=SQLOLEDB;” 代码如下: ## login.aspx.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.OleDb; using System.Web.Configuration; public partial class login : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { string user_name, user_pw, real_name, title, school, department, phone_number, email; user_name = UserText.Text.Replace("'", "''"); user_pw = PassText.Text.Replace("'", "''"); real_name = NameText.Text.Replace("'", "''"); title = TitleText.Text.Replace("'", "''"); school = SchoolText.Text.Replace("'", "''"); department = DepartmentText.Text.Replace("'", "''"); phone_number = PhoneText.Text.Replace("'", "''"); email = EmailText.Text.Replace("'", "''"); string strConn = WebConfigurationManager.ConnectionStrings["LocalSqlServer"].ConnectionString; OleDbConnection conn = new OleDbConnection(strConn); conn.Open(); string sql = "insert into userinfo (user_name,user_pw,real_name,title,school,department,phone_number,email)values]('" + user_name + "','" + user_pw + "','" + real_name + "','" + title + "','" + school + "','" + department + "','" + phone_number + "','" + email + "')"; OleDbCommand cmd = new OleDbCommand(sql,conn); cmd.ExecuteNonQuery(); conn.Close(); } private void CheckInput() { throw new NotImplementedException(); } protected void UserText_TextChanged(object sender, EventArgs e) { } } ``` ``` ## web.config <configuration> <system.web> <compilation debug="true" targetFramework="4.0"/> </system.web> <connectionStrings> <add name="myAccessConn" connectionString="Provider=Microsoft.Jet.OleDb.4.0;Data ; Data source=D:\My Documents\Documents\Database3.accdb; Persist Security Info=False;"/> </connectionStrings> </configuration> ``` ``` 查了很多解决办法均失败,求大神指教
C#连接Access数据库insert操作时,debug目录下临时数据库修改了,但是原数据库不变。
尝试把accdb放在debug文件下下过,但是我导入时它自动就会在项目文件夹里复制过去一个数据库文件。insert操作时,显示插入的信息是成功的,并且当时可以搜索到该数据,但重新运行程序后,以前的数据未被保存。 App.config ------------------------------------------------------------------------- < ?xml version="1.0" encoding="utf-8" ?> < configuration> < configSections> </configSections> < connectionStrings> < add name="BusDB" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Bus(原件).accdb;Persist Security Info=True" providerName="System.Data.OleDb" /> < /connectionStrings> < startup> < supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> < /startup> < /configuration> -------------------------------------------------------------------------- BusDB.cs -------------------------------------------------------------------------- (插入函数都差不多,就贴一个,因为数据都是这个情况。) public static void addBusID(String busID) { DbCommand cmd = Connection.CreateCommand(); cmd.CommandText = String.Format("INSERT INTO [Bus] VALUES ('{0}')", busID); cmd.ExecuteNonQuery(); } --------------------------------------------------------------------------- MainWindow.xml.cs //此处代码我已修改为简单版本,为测试用,就insert busID public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void button1_click(object sender, RoutedEventArgs e) { List<String> station = new List<string>(); if (busNumber.Text == "") { MessageBox.Show("请输入车次"); busNumber.Focus(); return; } else if( BusDB.existBusID(busNumber.Text)==true) { MessageBox.Show("该车已存在"); busNumber.Focus(); return; } else if (addstations.Text == "") { MessageBox.Show("请输入车站"); addstations.Focus(); } else { BusDB.addBusID(busNumber.Text);//简化版 } } private void window_loaded(object sender, RoutedEventArgs e) { string connStr = System.Configuration.ConfigurationManager.ConnectionStrings["BusDB"].ConnectionString; BusDB.Connection = new OleDbConnection(connStr); try { BusDB.Open(); } catch (Exception ex) { if (MessageBox.Show(ex.Message + "\r\n是否继续?", "数据访问错误", MessageBoxButton.YesNo) == MessageBoxResult.No) this.Close(); } } private void window_closed(object sender, EventArgs e) { BusDB.Close(); } } } ---------------------------------------------------------------------------- 设置断点后,可以得到 cmd.ExecuteNonQuery() 的返回值是1. ![CSDN移动问答][1] ![CSDN移动问答][2] ![CSDN移动问答][3]![CSDN移动问答][4]![CSDN移动问答][5]![CSDN移动问答][6] [1]: http://my.csdn.net/my/album/detail/1727613#1727603 [2]: http://my.csdn.net/my/album/detail/1727613#1727605 [3]: http://my.csdn.net/my/album/detail/1727613#1727607 [4]: http://my.csdn.net/my/album/detail/1727613#1727609 [5]: http://my.csdn.net/my/album/detail/1727613#1727611 [6]: http://my.csdn.net/my/album/detail/1727613#1727613
C# 操作access无法更新数据!
我的代码是:从access中离线读取数据到datatable中,然后修改datatable里面某一行学生姓名的值,然后再更新到数据库中,但是不知道下面的代码错在哪里,老是出错!请大神指点一下,网上关于access数据库的教程,很多都是一样,没有找到答案! students表,包含学生的学号,姓名,性别,班级 string strConnection = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=data.accdb"; OleDbConnection objConnection = new OleDbConnection(strConnection); objConnection.Open(); string sql = "select * from students"; OleDbDataAdapter adapter = new OleDbDataAdapter(sql, strConnection); OleDbCommandBuilder bld = new OleDbCommandBuilder(adapter); adapter.UpdateCommand = bld.GetUpdateCommand(); DataTable dt = new DataTable(); adapter.Fill(dt); dt.Rows[7]["姓名"] = "张三"; dt.AcceptChanges(); adapter.Update(dt); 但是老是出错,请各位大神看看问题出在哪里? 我就是想通过更新datatable的方式更新数据库!
关于网页中 OleDbDataReader对象读取ACCESS中数据
```protected void Page_Load(object sender, EventArgs e) { DB.setDBPath(Page.Server.MapPath("/App_Data/TestModel.accdb")); //连接ACCESS表 OleDbConnection myconn = DB.createConnection(); myconn.Open(); string select = "select * from UserInfo"; OleDbCommand cmd = new OleDbCommand(select, myconn); OleDbDataReader a = cmd.ExecuteReader(); string b=a[0].ToString(); a.Close(); } ``` ACCESS数据库中是有数据的,然后用OleDbDataReader对象就是读取不出来,如string b=a[0].ToString(),调试时报错: “System.InvalidOperationException”类型的异常在 System.Data.dll 中发生,但未在用户代码中进行处理 其他信息: 不存在此行/列的数据。 但是对OleDbDataReader对象调用Read()方法,返回True,表明不是空表。 于是我换了种方式,我用 DataSet访问则可以显示在GV控件上,代码如下: ``` DB.setDBPath(Page.Server.MapPath("/App_Data/TestModel.accdb")); OleDbConnection myconn = DB.createConnection(); myconn.Open(); string selectStr = "select * from UserInfo"; OleDbDataAdapter oda = new OleDbDataAdapter(selectStr, myconn); DataSet ds = new DataSet(); oda.Fill(ds); GV.DataSource = ds; GV.DataBind(); myconn.Close(); ``` 求大神们指点下为什么OleDbDataReader会出问题,谢谢!!!! 初学者。。。
C#中连接Access的问题
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.OleDb;//连接Access数据库 namespace Login { public partial class Form1 : Form { static public string username;//用于保存用户名 static public string password; public Form1() { InitializeComponent(); } //判断语句 private bool judge() { if (txt_username.Text == "") return false; if (txt_password.Text == "") return false; return true; } //登陆按钮的点击 private void btn_login_Click(object sender, EventArgs e) { if (!judge()) { MessageBox.Show("请输入正确的的信息..."); return ; } //创建路径及数据名 string strPath = Application.StartupPath+"\\login.accdb"; //生成来连接数据库字符串 string oleCon = "provider=Microsoft.Jet.OLEDB.12.0;Data source=" + strPath; //创建数据库连接 OleDbConnection conn = new OleDbConnection(oleCon); // conn.Open(); //SQL查询语句 string access = "select UserId,Password from user where UserId='" + this.txt_username.Text + "'and Password='" + this.txt_password.Text + "'"; OleDbCommand cmd = new OleDbCommand(access, conn); OleDbDataReader hyw = cmd.ExecuteReader(); if (hyw.Read()) { //在构造中我们的量就作为判断 username = txt_username.Text; password = txt_password.Text; //一旦连接成功了就弹出窗口 MessageBox.Show("登录成功!"); Form f2 = new Form2(); this.Hide(); f2.ShowDialog(); this.Dispose(); } else { //信息错误,判断条件不成立 MessageBox.Show("输入用户密码错误"); } } } } 报 未在本地计算机上注册“Microsoft.Jet.OLEDB.12.0”提供程序。??? 后来我安装了AccessDatebaseEngine.exe 还是报一样的错
asp.net设计登录界面与access数据库连接
用asp.net编写了一个成绩查询的登录界面,用了sqldatasource控件连接了access中的一个成绩管理信息.accdb数据库,怎么来编写
如何通过一个button来将datagridview中的内容更新到数据库中
我通过datatable来填充数据 但如何将datagridview中的更改后的数据更新到数据库中就不会了。。。 private void Form2_Load(object sender, EventArgs e) { dataGridView1.AllowUserToAddRows = false; OleDbConnection conn = new OleDbConnection(); conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;;Data Source=g:\\C#\\windows程序\\MISapp\\MISapp\\em.accdb;"; try { OleDbDataAdapter da = new OleDbDataAdapter(@"select * from employee", conn); conn.Open(); DataTable table = new DataTable(); da.Fill(table); dataGridView1.DataSource = table; } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { if (conn.State == ConnectionState.Open) conn.Close(); } dataGridView1.UnDo_ReDoInitialize(); }
qt 连接Access数据库出错
qt 连接Access数据库出错[Microsoft][ODBC驱动程序管理器]未发现数据源名称并且未指定默认驱动程序 QODBC3:Unable to connect 我已经在控制面板里配置了数据源,选择的是Microsoft Access Driver (*.mdb, *.accdb)驱动器,开发环境Qt5, Access2013, win10 db = QSqlDatabase::addDatabase("QODBC", "test"); QString dsn = QString("DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};FIL={MS Access};DBQ=E:\\Project\\data.accdb"); db.setDatabaseName(dsn); // 打开数据库 if(!db.open()) { QMessageBox::critical(0,QObject::tr("Database Error"), db.lastError().text()); return false; }
python 通过pypyodbc访问access数据库,提示“常见错误 无法打开注册表项”
百度了很多方法,office2010、2007以及2013都试了,数据库驱动也安装了,odbc数据源也添加了,文件权限也改成everyone可读可写了,但是现在还是报错 ![图片说明](https://img-ask.csdn.net/upload/201912/11/1576052346_193768.png) 报错如上图所所示; ``` import pypyodbc import os path = os.getcwd() + "\VoIPNodes.mdb" str = 'Driver = {Microsoft Access Driver (*.mdb,*.accdb)}; PWD="CIT201302"; DBQ="VoIPNodes.mdb"' db = pypyodbc.win_connect_mdb(r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};PWD="CIT201302";BDQ={}').format(path) curser = db.cursor() ``` 代码如图所示,请教一下各位
accdb的表按一样的表结构写到Oracle数据库
我想把一个.accdb的表按一样的表结构写到Oracle数据库 我是这么写的sql ,一直不行 SELECT * INTO tableName FROM OLEDB[OLEDB:Provider=Microsoft.ACE.OLEDB.12.0;Data Source=access数据库文件地址;Persist Security Info=False;]FROM 已知的access数据库的表名; 请问该怎么实现这个功能?
visual c# 和access的 运行没错误,但是调试了运行没反应 button2
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.OleDb; namespace 专科医院门诊系统_眼科_ { public partial class 挂号界面 : Form { public 挂号界面() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { 挂号缴费选择界面 frm = new 挂号缴费选择界面(); frm.Show(); Hide(); } private void button2_Click(object sender, EventArgs e) { string a = textBox1 .Text ; string b = textBox2 .Text ; string c = textBox3 .Text ; string d = textBox4 .Text ; string f = textBox5 .Text ; string g = textBox6 .Text ; OleDbConnection conn = new OleDbConnection(); conn.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:\design\vc\project\专科医院门诊系统(眼科)\db1.accdb"; conn.Open(); string str = "insert into patient ([ID],名字,年龄,性别,电话号码,科室) values (('" + a + "','" + b + "','" + c + "','" + d + "','" + f + "','" + g + "')"; OleDbCommand cmd=new OleDbCommand(); cmd.Connection=conn; cmd.CommandText=str; cmd.ExecuteNonQuery(); cmd.Dispose(); conn.Close(); conn.Dispose(); MessageBox.Show("挂号成功"); } private void button3_Click(object sender, EventArgs e) { textBox1.Text = textBox2.Text = textBox3.Text = textBox4.Text = textBox5.Text = string.Empty; } private void 挂号界面_Load(object sender, EventArgs e) { } } } 难道是数据库连接或者 insert 语句错误吗? 求大神帮忙看下,帮我改下,小弟实在是小白啊
菜鸟,不会写sql,c#,access
string jizuname1 = textBox4.Text; string zhuanziname1 = textBox5.Text; double zhuanzi11 = Convert.ToInt32(textBox101.Text); double zhuanzi12 = Convert.ToInt32(textBox111.Text); double zhuanzi13 = Convert.ToInt32(textBox121.Text); string sql = " INSERT INTO 转子基本参数 values('" + jizuname1 + "','" + zhuanziname1 + "'," + zhuanzi11 + "," + zhuanzi12 + "," + zhuanzi13 + ")"; loaddata.instance.ExecuteSQL(sql); 为什么每次都插不到数据库呢 在access中直接执行这句话,可以插入数据, INSERT INTO 转子基本参数 values('aa','s',1,2,3) “转子基本参数表” 中五个字段分别是 文本,文本,数字,数字,数字 public int ExecuteSQL(string SQLString)//执行SQL语句 { string strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Application.StartupPath + @"\data\wang.accdb"; using (OleDbConnection connection = new OleDbConnection(strConnection)) { using (OleDbCommand cmd = new OleDbCommand(SQLString, connection)) { OleDbTransaction tx = null; try {//通过连接启动事务 connection.Open();//一个连接对象只能调用一次 tx = connection.BeginTransaction(); cmd.Transaction = tx;//一个连接对象可以调用多次 int rows = cmd.ExecuteNonQuery();//执行数据库 非查询类操作、 tx.Commit(); connection.Close(); return rows; } catch (System.Data.OleDb.OleDbException e) { tx.Rollback(); connection.Close(); throw e; } } } } public DataTable QuerySQL(string sql) { DataSet dset = new DataSet(); try { //1、建立连接 Microsoft.Jet.OLEDB.4.0 string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Application.StartupPath + @"\data\wang.accdb"; OleDbConnection odcConnection = new OleDbConnection(strConn); //2、打开连接 odcConnection.Open(); //建立SQL查询 OleDbCommand odCommand = odcConnection.CreateCommand(); //3、输入查询语句 odCommand.CommandText =sql; OleDbDataAdapter ODbda = new OleDbDataAdapter(); ODbda.SelectCommand = odCommand; ODbda.Fill(dset); odcConnection.Close(); } catch (OleDbException ex) { MessageBox.Show(ex.Message, "数据库连接有问题!"); } // return dset.Tables[0]; if (dset != null) return dset.Tables[0]; else return null; } 以上是数据库信息,数据库应该是连上了,别的地方也取过数据,成功了
Qt连接OBDC数据库连接失败
Qt初学,最近在学习数据库相关。 程序的输出结果是数据库创建失败(如下),不知道是哪里出了问题,求大神指教 贴上源代码: #ifndef CONNECTION #define CONNECTION #include <QMessageBox> #include <QSqlDatabase> #include <QSqlQuery> static bool createConnection() { QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); db.setDatabaseName("DRIVER={Microsoft Access Driver (*.accdb)};FIL={MS Access};DBQ=Database1.accdb"); if(!db.open()) { QMessageBox::critical(0,"Cannot open database","Unable to establish a database connection.",QMessageBox::Cancel); return false; } QSqlQuery query; query.exec("Create table record(id int primary key,""RecordName varchar[20])"); query.exec("insert into record values(0,Had a good meal)"); query.exec("insert into record values(1,Bought clothes)"); return true; } #endif // CONNECTION
java 连接access2007数据库问题!
求各位大神解惑! 我是连接一个放在公共盘的数据库。这样做的应用谁都能用。 public class ConnectAccess { private static String strurl; public void setStrurl(String strurl,int pwd){ this.strurl="jdbc:odbc:driver={Microsoft Access Driver (*.accdb)};DBQ="+strurl+";pwd="+pwd; } public ConnectAccess(String strurl,String pwd){//构造方法 ConnectAccess.strurl="jdbc:odbc:driver={Microsoft Access Driver (*.accdb)};DBQ="+strurl+";pwd="+pwd; //System.out.println(ConnectAccess.strurl); //strurl = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=D:\\ScannerList.accdb;pwd=3759"; } public ConnectAccess(){} public static void main(String[] args){ ConnectAccess ca =new ConnectAccess("\\\\huafile01\\WH\\20_REC\\02.RMA & MRO\\database\\ScannerList.accdb","3759"); ca.tryConnect(); } public boolean tryConnect(){ boolean falg=false; //String sql="select * From USERinfo where [USER]=\""+user+"\"" ; String sql="select * From PART_MPN "; Connection conn = null; Statement stmt = null; ResultSet rs = null; try { Class cc=Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); System.out.println("驱动: "+cc); System.out.println("strurl: "+strurl); conn = DriverManager.getConnection(strurl);//此句报错空指针! System.out.println("conn: "+conn); stmt = conn.createStatement(); System.out.println("stmt: "+stmt); rs = stmt.executeQuery(sql); System.out.println("sql: "+sql); System.out.println("rs: "+rs); falg=rs.next(); }catch (Exception e) { System.err.println(e); }finally{ try { rs.close(); } catch (Exception ex) { } try { stmt.close(); } catch (Exception ex) { } try { conn.close(); } catch (Exception ex) { } } return falg; } 这是一个测试连接的 之前用一个本地盘的jdk1.6 都一切正常。后来换了个C 盘的jdk 1.8 之后就在红色部分报错空指针。用本地盘的jdk 做出来的应用 打包成jre 之后一直无法加载驱动。就是Class.forName没结果。网上找了好多没有能解决的。 换了驱动索性把工作路径也设置在了公共盘。但是这样就是在连接数据库Connection时总是出错!求解惑。 页面设计都设计好了。本来用的D盘的jdk1.6 一切无问题都测试好了。 结果用myeclipse 导出成jre 就是无法加载驱动。 用电脑自带的c盘的jdk1.8 就是无法连接数据库。 说一下我这里的开发环境; 1公司的电脑。我做个应用要给很多电脑用。公司电脑有公共盘。单个电脑无权限连接别的电脑。所有只有借助公共盘放数据库 2 个人电脑的C盘个人无权限增删改。只可读。公司装的系统每台机都有jdk。 就在C:\Program Files\Java\jre1.8.0_40 。 3 我下载下来了一个JDK 但是无法安装到公共盘去。 没有权限。 到底怎样才能正常加载驱动连接数据库工作啊 !
连接数据库出现“文件名无效”的提示
我想用vb.net建立一个access数据库连接,这个数据库是放在asp.net网站上面的,然后在窗体中的事件下打开,但是出现了文件名无效的提示,请问问题出在哪里了? 网页的地址是http://localhost:56548/WebSite1/File,然后我点击里面的事件中连接http://localhost:56548/WebSite1/File/People.accdb超链接是可以直接打开数据库的,不晓得问题出在了哪里?(ps:该People.accdb文件在C:\Users\machenike\Desktop\毕业设计\asp.net\WebSite1\File,浏览器根http://localhost:56548/) Public Sub Login_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim ConnString As String = "Provider=Microsoft.ACE.OLEDB.12.0;Mode=Share Exclusive;Data source=http://localhost:56548/WebSite1/File/People.accdb" objConn = New OleDbConnection(ConnString) Try objConn.Open() MessageBox.Show("欢迎使用暂住人员管理系统", "提示") objConn.Close() Catch OleDbe As OleDbException MessageBox.Show(OleDbe.Message, "连接失败对话框") Exit Sub End Try End Sub
请问高手,Delphi如何读写access库中的超级链接字段。
最近做一个小程序,用的是Delphi XE 10+Access2007(.accdb),在库中有一个字段是超级链接,怎么进行此字段的读写和访问,代码如何写,还请高手不吝赐教,不胜感激。
php连接access数据库的accdb格式应该怎么连接
我的系统是win7+access2010/32位+php5.2。数据库生成的文件格式是accdb,请问怎么连接上去。
vba 连接access数据库,rst.open那句出现问题,提示至少一个参数没有被指定值
Private Sub Command6_Click() Dim conn As ADODB.Connection Set conn = New ADODB.Connection conn.ConnectionString = "Provider=microsoft.ace.oledb.12.0;persist security info=false;data source=f:\login.accdb;" conn.Open Dim rst As ADODB.Recordset Set rst = New ADODB.Recordset rst.Open "select * from login where name=' " & username.Value & " '", CurrentProject.Connection End Sub username是窗体中文本框控件的名字。 求高手解答,非常感谢!
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、PDF搜索网站推荐 对于大部
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
Vue + Spring Boot 项目实战(十四):用户认证方案与完善的访问拦截
本篇文章主要讲解 token、session 等用户认证方案的区别并分析常见误区,以及如何通过前后端的配合实现完善的访问拦截,为下一步权限控制的实现打下基础。
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入  假设现有4个人
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
写在前面: 我是 扬帆向海,这个昵称来源于我的名字以及女朋友的名字。我热爱技术、热爱开源、热爱编程。技术是开源的、知识是共享的。 这博客是对自己学习的一点点总结及记录,如果您对 Java、算法 感兴趣,可以关注我的动态,我们一起学习。 用知识改变命运,让我们的家人过上更好的生活。 目录一、杨辉三角的介绍二、杨辉三角的算法思想三、代码实现1.第一种写法2.第二种写法 一、杨辉三角的介绍 百度
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
SQL-小白最佳入门sql查询一
一 说明 如果是初学者,建议去网上寻找安装Mysql的文章安装,以及使用navicat连接数据库,以后的示例基本是使用mysql数据库管理系统; 二 准备前提 需要建立一张学生表,列分别是id,名称,年龄,学生信息;本示例中文章篇幅原因SQL注释略; 建表语句: CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // dosho
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,
程序员:我终于知道post和get的区别
IT界知名的程序员曾说:对于那些月薪三万以下,自称IT工程师的码农们,其实我们从来没有把他们归为我们IT工程师的队伍。他们虽然总是以IT工程师自居,但只是他们一厢情愿罢了。 此话一出,不知激起了多少(码农)程序员的愤怒,却又无可奈何,于是码农问程序员。 码农:你知道get和post请求到底有什么区别? 程序员:你看这篇就知道了。 码农:你月薪三万了? 程序员:嗯。 码农:你是怎么做到的? 程序员:
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
      11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员
Android 9.0系统新特性,对刘海屏设备进行适配
其实Android 9.0系统已经是去年推出的“老”系统了,这个系统中新增了一个比较重要的特性,就是对刘海屏设备进行了支持。一直以来我也都有打算针对这个新特性好好地写一篇文章,但是为什么直到拖到了Android 10.0系统都发布了才开始写这篇文章呢?当然,一是因为我这段时间确实比较忙,今年几乎绝大部分的业余时间都放到写新书上了。但是最主要的原因并不是这个,而是因为刘海屏设备的适配存在一定的特殊性
网易云6亿用户音乐推荐算法
网易云音乐是音乐爱好者的集聚地,云音乐推荐系统致力于通过 AI 算法的落地,实现用户千人千面的个性化推荐,为用户带来不一样的听歌体验。 本次分享重点介绍 AI 算法在音乐推荐中的应用实践,以及在算法落地过程中遇到的挑战和解决方案。 将从如下两个部分展开: AI 算法在音乐推荐中的应用 音乐场景下的 AI 思考 从 2013 年 4 月正式上线至今,网易云音乐平台持续提供着:乐屏社区、UGC
【技巧总结】位运算装逼指南
位算法的效率有多快我就不说,不信你可以去用 10 亿个数据模拟一下,今天给大家讲一讲位运算的一些经典例子。不过,最重要的不是看懂了这些例子就好,而是要在以后多去运用位运算这些技巧,当然,采用位运算,也是可以装逼的,不信,你往下看。我会从最简单的讲起,一道比一道难度递增,不过居然是讲技巧,那么也不会太难,相信你分分钟看懂。 判断奇偶数 判断一个数是基于还是偶数,相信很多人都做过,一般的做法的代码如下
日均350000亿接入量,腾讯TubeMQ性能超过Kafka
整理 | 夕颜出品 | AI科技大本营(ID:rgznai100) 【导读】近日,腾讯开源动作不断,相继开源了分布式消息中间件TubeMQ,基于最主流的 OpenJDK8开发的
8年经验面试官详解 Java 面试秘诀
    作者 | 胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三百位候选人。在本文里,就将结合本人的面试经验,针对Java初学者、Java初级开发和Java开发,给出若干准备简历和准备面试的建议。   Java程序员准备和投递简历的实
面试官如何考察你的思维方式?
1.两种思维方式在求职面试中,经常会考察这种问题:北京有多少量特斯拉汽车? 某胡同口的煎饼摊一年能卖出多少个煎饼? 深圳有多少个产品经理? 一辆公交车里能装下多少个乒乓球? 一
相关热词 如何提升c#开发能力 矩阵乘法c# c#调用谷歌浏览器 c# 去空格去转义符 c#用户登录窗体代码 c# 流 c# linux 可视化 c# mvc 返回图片 c# 像素空间 c# 日期 最后一天
立即提问