最近刚学Oracle,遇到了很多基本的问题,希望各位高手不要骂我,因为我也上百度什么的查过了,但还是没解决我的问题。我遇到的问题是:
我新建了一个表,表名就叫Users吧,然后我在用developer插入数据的时候好像可以插入,但是关掉developer再开的时候就查询不到数据了,好像数据都没了,还是一张空的表,就好像之前插入的数据只是暂时存在的一样。所以第一个问题我想问怎么永久性插入数据?
然后我在C#的程序中用查询语句查询的时候,总是提示“表或视图不存在”,我不知道是不是因为表里面没有数据的问题。第二个问题就是C#提示的“表或视图不存在”的问题,有没有其他的原因存在?在此希望各位高手不吝赐教!!谢谢啊!

解决方案 »

  1.   

    你没有提交吧,commit..要提交才行。
      

  2.   

    第一个问题,你用sql/developer工具插入了数据然后关闭了,查询数据时空的,那是因为你插入数据了没有提交。
    第二个,你C#中确认连接数据库的账号是你在sql/developer工具中建立表的那个用户吗?或者你是否有权限访问这表。
      

  3.   

    第一个问题有两个可能:没有提交;或者建表语句有问题,你建的是个临时表。
    第二个问题:oracle的表在划分到各个用户的名字下面,如果要访问其它用户名下的表需要加上用户名的,例如comm.base_dict是访问comm用户名下的表base_dict。
      

  4.   

    1 你没有提交  commit  进行dml都要commit2 其他用户访问非本用户创建的表 格式  user.tablename
      

  5.   

    执行 commit();
    不知你用的是什么客户端,找找有个commit按钮的!或在你的SQL后面手动提交:commit();
      

  6.   

    补充句,我也刚接触oracle不久,下面是个想学习oracle的好地方,走的弯路会少些
    http://www.eygle.com/archives/2008/11/become_dba_quickly.html
      

  7.   

    使用developer修改数据时你要注意几步操作:
    1.lock 点击小锁,把这张表lock住
    2.修改或追加数据
    3.确定,点击对勾
    4.commit 点击上面一个绿色的按钮
    以上整个步骤是操作developer是必须的,否则会出现没有修改成功数据,锁表等问题
      

  8.   

    插入后要提交
    sql >commit;
      

  9.   

    在 sqldeveloper 配置里设置自动提交
      

  10.   

    第一个问题是因为你插入数据后没有提交 
    insert into ...;
    commit;
    第二个问题是不是你c#连接的用户没有操作这个表的权限
      

  11.   

    1 . 是不是sql server用多了....oracle种的insert是需要commit的2. 你建的表要和你的用户对应 。。
    比如A用户建了A表 .B用户使用A表要写上 A.A