mybatis3动态创建表,判断表是否存在,删除表

1.mybatis3动态创建表,判断表是否存在,删除表

mapper配置文件:

<span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
   "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >

<mapper namespace="com.doctor.mybatis3practice.mapper.BlogMapper" >
	<resultMap type="Blog" id="baseResultMap">
		<id property="id" column="id"/>
		<result property="authorId" column="author_id"/>
		<result property="title" column="title"/>
	</resultMap>
	<sql id="all_collum">
		id,author_id,title
	</sql>

	<insert id="insertBlog" useGeneratedKeys="true" keyProperty="id">
		insert into blog ( author_id,title)
		 values (#{authorId},#{title})
	</insert>

	<select id="queryById" parameterType="Long" resultMap="baseResultMap">
		select <include refid="all_collum"/>
		from blog
		where id = #{id}
	</select>

	<select id="existTable" parameterType="String" resultType="Integer">
		select count(1)
		from sys.systables
		where LCASE(tablename)=#{tableName}
	</select>
	<update id="dropTable">
		drop table ${tableName}
	</update>

	<update id="createNewTable" parameterType="String">
		create table ${tableName} (
							id int not null generated by default as identity,
							author_id int not null,
							title varchar(255),
							primary key (id))
	</update>
</mapper></span>

注意配置文件中的${tableName}  和#{tableName}的区别.

mapper接口如下:

<span style="font-size:18px;">package com.doctor.mybatis3practice.mapper;

import org.apache.ibatis.annotations.Param;

import com.doctor.mybatis3practice.domain.Blog;

public interface BlogMapper {
	Blog queryById(Long id);

	int insertBlog(Blog blog);
	int createNewTable(@Param("tableName") String tableName);
	int dropTable(@Param("tableName") String tableName);
	int existTable(String tableName);
}
</span>

注意

<span style="font-size:18px;">@Param("tableName") 的注解.</span>
时间: 2024-10-20 19:54:17

mybatis3动态创建表,判断表是否存在,删除表的相关文章

Mysql基础知识:创建、查看、修改和删除表

Mysql 创建.查看.修改和删除表 1. 创建表 创建表的语法形式: CREATE TABLE 表名 ( 属性名 数据类型 约束条件, 属性名 数据类型 约束条件, . . . ) ENGINE=存储引擎名 DEFAULT CHARSET=字符编码名; 约束条件表: 注意: 1)可以添加多个主键.形式: 在表名后的括号内添加:PRIMARY KEY(字段名1, 字段名2, ...): 2)存储引擎和字符编码可以省略不写: 3)设置表的字段名为默认值时,需要在 “DEFULT” 关键字后添加 “

创建,读取,修改,删除表 上

注释语法- -, # .sql后缀的文件是数据库查询文件,用数据库查询打开 保存查询 在数据库中 列有个名字叫字段,行有个名字叫记录. CRUD操作:create 创建 read  读取update 修改delete  删除 一.添加数据 Insert  into  info  valuse ( 'p009',                       主键不能重复 '张三', 1,                            布尔型 不是字符串不用引号 'n001', '2016-

c#中动态创建textbox并且从数据库中获取表中数据添加到textbox中

1 private void FormLugOther_Load(object sender, EventArgs e) 2 { 3 foreach (string str in FormLug.FieldListLug1) 4 { 5 try 6 { 7 Label label = new Label(); 8 label.Text = str; 9 this.tableLayoutPanel1.Controls.Add(label); 10 TextBox textbox = new Tex

js制作动态创建table行与修改等编辑表单功能特效

<script type="text/javascript"> //Create TR var nName = new Array("Tony","Mika","Neo","Oi","Kim","Park","Mr Lee","Tasky","Saco","Novel"); v

表单处理之添加删除表单行

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <div id="search_conditions"> <div class="condition"> <a on

SQL语句创建数据库,SQL语句删除数据库,SQL语句创建表,SQL语句删除表,SQL语句添加约束,SQL语句删除约束

创建数据库: 1 CREATE DATABASE Test --要创建的数据库名称 2 ON PRIMARY 3 ( 4 --数据库文件的具体描述 5 NAME='Test_data', --主数据文件的逻辑名称 6 FILENAME='E:\project\Test_data.mdf', --主数据文件的物理名称 7 SIZE=5MB, --主数据文件的初始大小 8 MAXSIZE=100MB, --主数据文件的增长的最大值 9 FILEGROWTH=15% --主数据文件的增长率 10 )

创建表,创建数据库, 删除表 ,删除数据库

创建表,创建数据库, 删除表 ,删除数据库 创建数据库 Create  database  text2  创建数据库text2 2. 删除数据库 Drop  database   text2  删除数据库text2 创建表 Create  table class   创建一个表叫class                  这是个主表 ( Code  varchar(20)  primary key,                                     创建序号 Name  

MySQL学习之创建、修改、删除表

1.如何创建表结构? 语法格式如下:    CREATE TABLE [IF NOT EXISTS] 表名 (           字段1 数据类型 [完整性约束条件],           字段2 数据类型 [完整性约束条件],           ....           字段n 数据类型 [完整性约束条件]          ); 说明 :[IF NOT EXISTS] 为可选字段,加上此选项后如果创建的数据表已经存在,不会报错,只会出现警告信息,而不会报错,如果不加此选项会出现报错信

删除表和表数据

删除表的T-SQL语句为:drop table <表名>drop是丢弃的意思,drop table表示将一个表彻底删除掉. 删除表数据有两种方法:delete和truncate. delete的用法如下:delete from <表名> [where条件] truncate的用法如下:truncate table <表名> delete和truncate的区别如下:1.delete可以删除表中的一条或多条数据,也可以删除全部数据:而truncate只能将表中的全部数据删