一、在数据库创建表格的SQL语句

1,创建一个link表格,包含属性:lid  主键,title 标题,  imgpath 图片地址 , url  网址  , info 说明,  isshow 显示1, 不显示0 , sort 顺序

CREATE TABLE link (         //创建 link 表格

lid INT AUTO_INCREMENT PRIMARY KEY,          //设置为主键

title  VARCHAR(100),          //varchar类型,最大可存100字符

imgpath  VARCHAR(50),

url  VARCHAR(50),

info VARCHAR(200),

isshow INT,             //int类型,无限制

sort  INT                  //注意,最后一个不用加逗号

)

CREATE  TABLE role(

uid  INT AUTO_INCREMENT  PRIMARY KEY,

uname  VARCHAR(30),

upwd  VARCHAR(30),

state INT

);

CREATE  TABLE role(

rid  INT AUTO_INCREMENT  PRIMARY KEY,

rname  VARCHAR(30),

sort  INT

);

2,使用外键创建用户角色表 users_role

CREATE TABLE users_role(

uid INT REFERENCES users(uid),    //uid 用户外键(使用了users表中的uid属性)

rid INT REFERENCES  role(rid)    //rid 角色外键(使用了role表中的rid属性)

)

3,创建一个视图vUsersAndRole(根据users表和role表)[视图是一个虚拟的表格,实际不存在这个表格,只是将相关表格的数据通过视图显示出来了]

CREATE VIEW vUsersAndRole

AS

SELECT users.*,role.rid,role.rname,role.sort      //选择了users的所有属性,以及role中的rid,rname,sort

FROM users,role, users_role       //从三个表中获取数据

WHERE users.uid = users_role.uid        //将中间表的 uid赋给users.uid达到关联并避免重复

AND role.rid = users_role.rid

二、在方法中执行的SQL语句

1,向表格 link 添加数据,null表示主键,并且这个主键是自动增长的,“?”表示可传入的参数,数量根据表格自定义,一般用于手动输入参数

String sql = "INSERT INTO link VALUES(NULL,?,?,?,?,?,?)";

2,删除表格中的某一行数据,“ "+lid+" ”  表示 从某出获取的参数,用来定位要删除的数据,一般用于选择动作获取到的参数

String sql = "DELETE FROM link WHERE lid IN ("+lid+")";

3,修改表中的数据,选择后使用 set 重新设置对应的参数

String sql = "UPDATE link SET titel=?,imgpath=?,url=?,info=?,isshow=?,sort=? WHERE lid=?";

4,选择表格,并依据 参数 sort 来排序

String sql = "SELECT * FROM link  order by sort ";

5,查找表格,根据参数 lid,一般用于查看表中的数据

String sql = "SELECT * FROM link where lid=?";

6,选择表格中限定的参数

String sql = "SELECT * FROM link order by sort  limit "+(pageNo-1)*pageSize+","+pageSize+"    ";

7,返回表格中的数量

String sql = "SELECT count(*) FROM link  ";

8,这里是查询视图 vroleAndGrante 的格式,依据选中的rid,注意格式!!!

String sql = "select * from vroleAndGrante where rid="+rid;

9,通过主键查询视图Vusers_role_grante中的一条信息,这里的主键是 gname

String sql = "SELECT gname FROM Vusers_role_grante  WHERE uid=?  GROUP BY gname";

部分实用的SQL语句的更多相关文章

  1. 实用的SQL语句

    行列互转 ) select * from test2 --列转行 select id,name,quarter,profile from test2 unpivot ( profile for qua ...

  2. SqlServer下一些实用的sql语句收集

    清理数据库日志 USE [master] ALTER DATABASE [表名] SET RECOVERY SIMPLE WITH NO_WAIT ALTER DATABASE [表名] SET RE ...

  3. 实用SQL语句大全

    一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...

  4. 程序员实用的 MySQL sql 语句

    这儿只讲究实用,  程序员编程时常用到的 MySQL的 sql语句(不包括基本的 select, update, delete 等语句). 1. 添加一个用户build,并赋予所有权限的命令 gran ...

  5. .NET Core实用技巧(一)如何将EF Core生成的SQL语句显示在控制台中

    目录 .NET Core实用技巧(一)如何将EF Core生成的SQL语句显示在控制台中 前言 笔者最近在开发和维护一个.NET Core项目,其中使用几个非常有意思的.NET Core相关的扩展,在 ...

  6. MySQL中特别实用的几种SQL语句送给大家

    在写SQL时,经常灵活运用一些SQL语句编写的技巧,可以大大简化程序逻辑.减少程序与数据库的交互次数,有利于数据库高可用性,同时也能显得你的SQL很牛B,让同事们眼前一亮. 目录 实用的SQL 1.插 ...

  7. T-SQL实用查询之常用SQL语句

    删除数据库所有的表: declare @sql varchar() begin SELECT @sql='drop table ' + name FROM sysobjects WHERE (type ...

  8. SQL SERVER 数据库实用SQL语句

    --查看指定表的外键约束 select * from sysobjects where parent_obj in( select id from sysobjects where name='表名' ...

  9. 简单实用 “易忘” 的SQL 语句语法,新老皆宜

    --创建数据库 create database 数据库名 on primary ( name='数据库名_data',  filename='数据库储存路径', size=数据库初始大小(MB),   ...

随机推荐

  1. HighCharts基本用法

    var options={ chart: {type: 'column',renderTo: 'ChartDesigner1'},//type :图表类型(柱状图,饼状图),renderTo :指向页 ...

  2. display:inline、block、inline-block的区别(转)

    display:block就是将元素显示为块级元素. block元素的特点是: 总是在新行上开始: 高度,行高以及顶和底边距都可控制: 宽度缺省是它的容器的100%,除非设定一个宽度 <div& ...

  3. 2015-09-22CSS:border、background、表格、超链接、overflow、firebug

    1.CSS的border属性 ⑴定义和用法 border 简写属性在一个声明设置所有的边框属性. 可以按顺序设置如下属性: border-width border-style border-color ...

  4. eclipse[日文版] 的SVN 上传步骤

    可能有些朋友在日企上班,肯定要用到SVN,可是一般就下载和更新,没有用到上传 这里来介绍下上传 1.项目右键 2.点击Share Project 3.点击SVN下一步 4.选择你的上传的服务器地址 5 ...

  5. log4net 生成多个空文件问题

    使用 log4net 的伙伴,相信很多人会遇到我现在这个问题 ,一般项目需求,便于管理和查找原因,会让项目的日志文件分类记录,然而会出现很多空日志, 出现这个问题的原因通常是我们web.config配 ...

  6. css控制文字长度,超出长度显示...

    css控制文字长度,超出长度显示... .style { max-width: 165px; overflow: hidden; white-space: nowrap; text-overflow: ...

  7. iOS中的设计模式

    一. MVC MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离 ...

  8. c#读取通达信历史数据的方法

    public Bar ReadBarMin(BinaryReader br, int instrumentId, long size) { int date = br.ReadUInt16(); in ...

  9. Java基础--说集合框架

    版权所有,转载注明出处. 1,Java中,集合是什么?为什么会出现? 根据数学的定义,集合是一个元素或多个元素的构成,即集合一个装有元素的容器. Java中已经有数组这一装有元素的容器,为什么还要新建 ...

  10. c#结构体和字节数组的转换、字节数组和stream的转换

    本文由博主(YinaPan)原创,转载请注明出处:http://www.cnblogs.com/YinaPan/p/streambytsstruct.html using System; using ...