Javascript 格式化Sql为可插入代码中的格式

在 PL/SQL 中测试sql正常后,需要插入代码中,为了代码的可读性,需要保留原有的换行符和注释,所以用js写了个小脚本,格式化sql,以便插入代码中直接使用。

演示地址:格式化sql

<html>
	<head>
		<title>格式化sql插入代码中</title>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=8" />

        <meta name="keywords" content="luchg技术交流-格式化sql插入代码中" />
        <meta name="description" content="luchg技术交流-格式化sql插入代码中" />
        <meta name="author" content="luchg技术交流-www.luchg.com" />
        <meta name="copyright" content="luchg技术交流-www.luchg.com" />

		<script type="text/javascript">

			function format(){

				var zhushi = document.getElementById("zhushi").value;	// 生成的sql中注释符号

				var from = document.getElementById("from").value;	// 原sql
				var sqls = from.split("\n");	// 根据换行符分割sql
				var toSql = "";	// 转换之后的sql

				var sql = "";	// 当前行 sql
				for(var key in sqls){
					
					sql = sqls[key];
					sql1 = "";
					sql2 = null;

					// 分割 sql 和注释
					sqlArr = sql.split("--");
					sql1 = sqlArr[0];
					sql2 = sqlArr[1];

					toSql += ' " ' + sql1 + ' " + ';

					// 如果有注释,添加注释符 和 注释
					if(sql2){
						toSql += zhushi + sql2;
					}

					toSql += ' \n ';	// 换行
				}

				document.getElementById("to").value = toSql;
			}

		</script>
	</head>
	<body>
		<textarea style="width:1300;height:300" id="from"></textarea>

		<div style="width:1300">
			<a>注释:</a><input type="text" value="//" style="width:50" id="zhushi" />
			<button onclick="format()">格式化</button>
		</div>

		<textarea style="width:1300;height:300" id="to"></textarea>
	</body>
</html>

 

发表评论