Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >自定义函数作为MariaDB查询中的分式函数

自定义函数作为MariaDB查询中的分式函数
EN

Database Administration用户
提问于 2023-02-13 03:02:05
回答 1查看 31关注 0票数 0

我在Maria DB中有以下代码,

我希望在查询中使用我的函数来创建一个以TABLE1的计数(*) +1开头的序列

它给出了创建序列查询中的一个错误:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    CREATE FUNCTION myFuntion() RETURNS INT
    BEGIN
       DECLARE lastID INT DEFAULT 1;
       SELECT COUNT(*) INTO lastID FROM TABLE1;
       RETURN lastID+1;
    END;
    
   CREATE SEQUENCE seq101 START WITH myFuntion() INCREMENT BY 1 ;

错误:

MySqlError { ERROR 1064 (42000):您的SQL语法出现错误;请检查与MariaDB服务器版本对应的手册,以获得在“myFuntion()增量为1”附近使用的正确语法。

EN

回答 1

Database Administration用户

发布于 2023-02-13 09:43:56

计划切换到AUTO_INCREMENT,也就是简单地将列更改为AUTO_INCREMENTALTER TABLE。它将自动执行MAX(id)+1来启动。

使用SEQUENCE的B计划:

  • 语法错误是因为它需要一个常量。解决方法是构建一个存储过程来计算数字,为CREATE语句构造一个字符串,然后是PREPAREEXECUTE
  • 警告:如果没有START TRANSACTION ... COMMIT,单独的连接可以在可以之前获取"next“id。
  • COUNT(*)+1更改为MAX(id)+1,以防ids中已经存在空白--由于DELETEs或其他可能造成空白的操作。(如,INSERT IGNORE.)
票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/323437

复制
相关文章
Mariadb MySQL、Mariadb中GROUP_CONCAT函数使用介绍
GROUP_CONCAT([DISTINCT] column_name [ORDER BY 序字段 ASC/DESC] [SEPARATOR '分隔符'])
授客
2019/09/11
1.6K0
Mariadb MySQL、Mariadb中GROUP_CONCAT函数使用介绍
【Kotlin】函数 ⑧ ( 函数引用 作为函数参数 | ::函数名 | 函数类型 作为函数返回值类型 )
函数引用 可以将 具名函数 转为 函数的参数值 , 只要可以使用 Lambda 表达式 参数的地方 , 就可以使用 函数引用 进行替代 ;
韩曙亮
2023/03/30
2.9K0
【Kotlin】函数 ⑧ ( 函数引用 作为函数参数 | ::函数名 | 函数类型 作为函数返回值类型 )
函数(四)(数组作为函数参数)
一是数组元素作为函数参数,这种情况下与简单变量作为函数的参数完全一样,数组元素的值被单向传递给形参变量。
pigeon
2022/04/11
1.5K0
函数(四)(数组作为函数参数)
js匿名函数作为函数参数
继承,多态,甚至指针,c能实现,c++,java有,javascript(和java是雷锋和雷峰塔的区别,名字上不知道坑了多少人)也能变通实现。
全栈程序员站长
2022/11/10
5.3K0
python中函数嵌套、函数作为变量以及闭包的原理
python允许创建嵌套函数。也就是说我们可以在函数里面定义函数,而且现有的作用域和变量生存周期依旧不变。
狼啸风云
2021/03/04
5.3K0
python中函数嵌套、函数作为变量以及闭包的原理
Golang 中函数作为值与类型
在 Go 语言中,我们可以把函数作为一种变量,用 type 去定义它,那么这个函数类型就可以作为值传递,甚至可以实现方法,这一特性是在太灵活了,有时候我们甚至可以利用这一特性进行类型转换。作为值传递的条件是类型具有相同的参数以及相同的返回值。
张乘辉
2019/06/14
1.7K0
【C语言笔记】函数指针作为函数的参数
函数指针有两种常用的用法,一种是作为结构体成员,关于函数指针作为结构体成员的用法可移步至上一篇【C语言笔记】函数指针作为结构体成员进行查看。另一种是函数指针作为函数的参数。这一篇分享的是函数指针作为函数的参数。
正念君
2019/06/26
10.8K0
【C语言笔记】函数指针作为函数的参数
【Python】函数进阶 ③ ( 函数作为参数传递 )
之前介绍的函数 , 都是 接收具体的 变量 或 字面量 数据 作为参数 , 如 : 数字 / 布尔值 / 字典 / 列表 / 元组 等 ;
韩曙亮
2023/10/11
4680
【Python】函数进阶 ③ ( 函数作为参数传递 )
MariaDB 存储过程与函数详解
简单的说,存储过程就是一条或者多条SQL语句的集合,可以理解为脚本,但是起作用不仅限于批处理,下面我们将重点学习如何使用创建存储函数和过程,变量的调用查看等,存储过程是MySQL的一个重点内容.
微软技术分享
2022/12/28
1.6K0
JavaScript中DOM查询封装函数
在JavaScript中可以通过BOM查询html文档中的元素,也就是所谓的在html中获取对象然后对它添加一个函数。
马克社区
2022/04/14
6290
查询函数|lookup函数家族
今天跟大家分享的是查询函数——lookup函数家族! 查询函数是excel函数中使用频繁程度与求和函数不相上下的功能。 excel中关于查询功能的函数主要有以下几组: lookup函数组: lookup vlookup hlookup index+match函数 今天我们只介绍第一组lookup函数: lookup函数: 当您需要查询一行或一列并查找另一行或列中的相同位置的值时,会使用其中一个查找和引用函数 LOOKUP。 LOOKUP(lookup_value, lookup_vector, [resu
数据小磨坊
2018/04/10
2K0
查询函数|lookup函数家族
使用 key paths 创建自定义查询函数
作为一个相当严格,静态编译的语言,Swift可能不会在语法自定义方面提供许多渠道,但这实际上确正好相反。通过自定义和重载运算符,key paths,函数/结果构建器 等功能,我们有很多机会为特定用例进行调整 Swift 的语法。
韦弦zhy
2021/07/01
1.3K0
使用 key paths 创建自定义查询函数
作为一个相当严格,静态编译的语言,Swift 可能不会在语法自定义方面提供许多渠道,但这实际上确正好相反。通过如何在 Swift 中自定义操作符,Swift 中 key paths 的能力,函数/结果构建器 等功能,我们有很多机会为特定用例进行调整 Swift 的语法。
Swift社区
2021/11/26
2K0
R中的自定义函数function
函数语法 函数名<-function(parameters){ statemens return(expression)} printLine <- function () { print("--------------------------------------------"); } #函数的调用 printLine(); #错误:无参函数,有参调用 printLine("parameter"); printNLines <- function (n) { for(i in 1:n) {
Erin
2018/01/09
2.5K0
结构体作为函数的参数
> 只要结构体成员是一个具有单个值的数据类型,便可把它作为参数传递给接受该特定类型的函数。 > 使用这种方式为函数传递参数与普通变量作为参数相同,都是以传值的方式传递的。
怪兽
2022/12/31
2.1K0
查询与引用函数——offset函数
今天要跟大家分享的是一个强大的查询与引用函数——offset函数! OFFSET函数的语法参数相对比较多,但是因为参数位置和函数都比较固定,所以只要能够理解各自含义,应用起来就会很方便。 offset
数据小磨坊
2018/04/10
1.7K0
查询与引用函数——offset函数
c语言函数指针的用法_函数指针作为形参
函数指针和指针函数,在学习 C 语言的时候遇到这两个东西简直头疼,当然还有更头疼的,比如什么函数指针函数、指针函数指针、数组指针、指针数组、函数指针数组等等,描述越长其定义就越复杂,当然理解起来就越难,特别是刚开始学习这门语言的童鞋,估计碰到这些东西就已经要崩溃了,然后好不容易死记硬背下来应付考试或者面试,然后过了几天发现,又是根本不会用,也不知道该在哪些地方用,这就尴尬了。
全栈程序员站长
2022/09/23
6730
【Kotlin】标准库函数 ② ( run 标准库函数 | run 函数传入 Lambda 表达式作为参数 | run 函数传入函数引用作为参数 )
Kotlin 语言中 , 在 Standard.kt 源码中 , 为所有类型定义了一批标准库函数 , 所有的 Kotlin 类型都可以调用这些函数 ;
韩曙亮
2023/03/30
8610
【Kotlin】标准库函数 ② ( run 标准库函数 | run 函数传入 Lambda 表达式作为参数 | run 函数传入函数引用作为参数 )
[C语言] 函数详解:库函数与自定义函数
在数学中,函数定义为通过一个变量的变化来影响另一个变量的变化。在C语言中,函数的概念与数学中的函数类似:一个函数接受参数(输入),经过一系列操作,返回结果(输出)。函数能够帮助我们将代码分成模块化的结构,使得代码的可读性和维护性大大提高。
DevKevin
2024/10/12
2470
MariaDB 连接查询
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一,该笔记用于生产环境快速查阅.
微软技术分享
2022/12/28
4.4K0
MariaDB 连接查询

相似问题

MariaDB JSON函数

10

无法使用户函数与mariadb中的子查询进行合作。

10

在MariaDB中创建函数的错误Sql (1064)

10

查询冻结在MariaDB中

10

Mariadb查询卡住

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文