A. vs2013怎麼連接sqlserver2008r2資料庫flower
VS2013帶有部分SQL的管理與聯接組件,但不含資料庫服務組件即 SQL SERVER 組件,所以,你要使用SQL SERVER資料庫的話,還得另行加裝。
一般來說微軟的東西,老版本的應該先安裝,兼容性上才會好一些,也就是說,在同一台電腦上安裝的話,應該先安裝SQL SERVER 2008,後安裝VS2013,當然,你要是已安裝了VS2013那就鏡象備份一下系統後,安裝SQL server 2008試試。學編程的人,學會鏡像備份系統很重要。
對就於vs2013同組的sql server 是SQL server 2012,操作上和SQL server 2008差別不大,如果沒有特別需求,建議用高版本。
B. 如何在多個queue多台server上部署Celery 以及任務狀態監控flower
許多Django應用需要執行非同步任務, 以便不耽誤http request的執行. 我們也可以選擇許多方法來完成非同步任務, 使用Celery是一個比較好的選擇, 因為Celery
有著大量的社區支持, 能夠完美的擴展, 和Django結合的也很好. Celery不僅能在Django中使用, 還能在其他地方被大量的使用. 因此一旦學會使用Celery, 我
們可以很方便的在其他項目中使用它.
1. Celery版本
本篇博文主要針對Celery 3.0.x. 早期版本的Celery可能有細微的差別.
2. Celery介紹
Celery的主要用處是執行非同步任務, 可以選擇延期或定時執行功能. 為什麼需要執行非同步任務呢?
第一, 假設用戶正發起一個request, 並等待request完成後返回. 在這一request後面的view功能中, 我們可能需要執行一段花費很長時間的程序任務, 這一時間
可能遠遠大於用戶能忍受的范圍. 當這一任務並不需要立刻執行時, 我們便可以使用Celery在後台執行, 而不影響用戶瀏覽網頁. 當有任務需要訪問遠程伺服器完
成時, 我們往往都無法確定需要花費的時間.
第二則是定期執行某些任務. 比如每小時需要檢查一下天氣預報, 然後將數據儲存到資料庫中. 我們可以編寫這一任務, 然後讓Celery每小時執行一次. 這樣我們
的web應用便能獲取最新的天氣預報信息.
我們這里所講的任務task, 就是一個Python功能(function). 定期執行一個任務可以被認為是延時執行該功能. 我們可以使用Celery延遲5分鍾調用function
task1, 並傳入參數(1, 2, 3). 或者我們也可以每天午夜運行該function.
我們偏向於將Celery放入項目中, 便於task訪問統一資料庫和Django設置.
當task准備運行時, Celery會將其放入列隊queue中. queue中儲存著可以運行的task的list. 我們可以使用多個queue, 但為了簡單, 這里我們只使用一個.
將任務task放入queue就像加入todo list一樣. 為了使task運行, 我們還需要在其他線程中運行的苦工worker. worker實時觀察著代運行的task, 並逐一運行這
些task. 你可以使用多個worker, 通常他們位於不同伺服器上. 同樣為了簡單起見, 我們這只是用一個worker.
我們稍後會討論queue, worker和另外一個十分重要的進程, 接下來我們來動動手:
3. 安裝Celery
我們可以使用pip在vietualenv中安裝:
pip install django-celery
4. Django設置
我們暫時使用django runserver來啟動celery. 而Celery代理人(broker), 我們使用Django database broker implementation. 現在我們只需要知道Celery
需要broker, 使用django自身便可以充當broker. (但在部署時, 我們最好使用更穩定和高效的broker, 例如Redis.)
在settings.py中:
import djcelery
djcelery.setup_loader()
BROKER_URL = 'django://'
...
INSTALLED_APPS = (
...
'djcelery',
'kombu.transport.django',
...
)
第一二項是必須的, 第三項則告訴Celery使用Django項目作為broker.
在INSTALLED_APPS中添加的djcelery是必須的. kombu.transport.django則是基於Django的broker
最後創建Celery所需的數據表, 如果使用South作為數據遷移工具, 則運行:
python manage.py migrate
否則運行: (Django 1.6或Django 1.7都可以)
python manage.py syncdb
5. 創建一個task
正如前面所說的, 一個task就是一個Pyhton function. 但Celery需要知道這一function是task, 因此我們可以使用celery自帶的裝飾器decorator: @task. 在
django app目錄中創建taske.py:
from celery import task
@task()
def add(x, y):
return x + y
當settings.py中的djcelery.setup_loader()運行時, Celery便會查看所有INSTALLED_APPS中app目錄中的tasks.py文件, 找到標記為task的function, 並
將它們注冊為celery task.
將function標注為task並不會妨礙他們的正常執行. 你還是可以像平時那樣調用它: z = add(1, 2).
6. 執行task
讓我們以一個簡單的例子作為開始. 例如我們希望在用戶發出request後非同步執行該task, 馬上返回response, 從而不阻塞該request, 使用戶有一個流暢的訪問
過程. 那麼, 我們可以使用.delay, 例如在在views.py的一個view中:
from myapp.tasks import add
...
add.delay(2, 2)
...
Celery會將task加入到queue中, 並馬上返回. 而在一旁待命的worker看到該task後, 便會按照設定執行它, 並將他從queue中移除. 而worker則會執行以下代
碼:
import myapp.tasks.add
myapp.tasks.add(2, 2)
7. 關於import
這里需要注意的是, 在impprt task時, 需要保持一致. 因為在執行djcelery.setup_loader()時, task是以INSTALLED_APPS中的app名,
加.tasks.function_name注冊的, 如果我們由於python path不同而使用不同的引用方式時(例如在tasks.py中使用from myproject.myapp.tasks import
add形式), Celery將無法得知這是同一task, 因此可能會引起奇怪的bug.
8. 測試
a. 啟動worker
正如之前說到的, 我們需要worker來執行task. 以下是在開發環境中的如何啟動worker:
首先啟動terminal, 如同開發django項目一樣, 激活virtualenv, 切換到django項目目錄. 然後啟動django自帶web伺服器: python manage.py runserver.
然後啟動worker:
python manage.py celery worker --loglevel=info
此時, worker將會在該terminal中運行, 並顯示輸出結果.
b. 啟動task
打開新的terminal, 激活virtualenv, 並切換到django項目目錄:
$ python manage.py shell
>>> from myapp.tasks import add
>>> add.delay(2, 2)
此時, 你可以在worker窗口中看到worker執行該task:
[2014-10-07 08:47:08,076: INFO/MainProcess] Got task from broker: myapp.tasks.add[e080e047-b2a2-43a7-af74-d7d9d98b02fc]
[2014-10-07 08:47:08,299: INFO/MainProcess] Task myapp.tasks.add[e080e047-b2a2-43a7-af74-d7d9d98b02fc] succeeded in 0.183349132538s: 4
9. 另一個例子
下面我們來看一個更為真實的例子, 在views.py和tasks.py中:
# views.py
from myapp.tasks import do_something_with_form_data
def view(request):
form = SomeForm(request.POST)
if form.is_valid():
data = form.cleaned_data
# Schele a task to process the data later
do_something_with_form_data.delay(data)
return render_to_response(...)
# tasks.py
@task
def do_something_with_form_data(data):
call_slow_web_service(data['user'], data['text'], ...)
10. 調試
由於Celery的運行需要啟動多個部件, 我們可能會漏掉一兩個. 所以我們建議:
使用最簡單的設置
使用python debug和logging功能顯示當前的進程
11. Eager模式
如果在settings.py設置:
CELERY_ALWAYS_EAGER = True
那麼Celery便以eager模式運行, 則task便不需要加delay運行:
# 若啟用eager模式, 則以下兩行代碼相同
add.delay(2, 2)
add(2, 2)
12. 查看queue
因為我們使用了django作為broker, queue儲存在django的資料庫中. 這就意味著我們可以通過django admin查看該queue:
# admin.py
from django.contrib import admin
from kombu.transport.django import models as kombu_models
admin.site.register(kombu_models.Message)
13. 檢查結果
每次運行非同步task後, Celery都會返回AsyncResult對象作為結果. 你可以將其保存, 然後在將來查看該task是否運行成功和返回結果:
# views.py
result = add.delay(2, 2)
...
if result.ready():
print "Task has run"
if result.successful():
print "Result was: %s" % result.result
else:
if isinstance(result.result, Exception):
print "Task failed e to raising an exception"
raise result.result
else:
print "Task failed without raising exception"
else:
print "Task has not yet run"
14. 定期任務
還有一種Celery的常用模式便是執行定期任務. 執行定期任務時, Celery會通過celerybeat進程來完成. Celerybeat會保持運行, 一旦到了某一定期任務需要執
行時, Celerybeat便將其加入到queue中. 不像worker進程, Celerybeat只有需要一個即可.
啟動Celerybeat:
python manage.py celery beat
使Celery運行定期任務的方式有很多種, 我們先看第一種, 將定期任務儲存在django資料庫中. 即使是在django和celery都運行的狀態, 這一方式也可以讓我們
方便的修改定期任務. 我們只需要設置settings.py中的一項便能開啟這一方式:
# settings.py
CELERYBEAT_SCHEDULER = 'djcelery.schelers.DatabaseScheler'
C. 找不到類型或命名空間名稱「flowerMain」(是否缺少 using 指令或程序集引用)
嗯 就是因為命名空間不一致的問題吧!
在flowerMain類裡面加上name flower {}
就好了!
D. Provider=SQLOLEDB.1
strerror = Err.Description
Set CN = Nothing
Set rs = Nothing
Set GetRecordset = Nothing
End Function
Public Function ExcuteCmd(strSQL As String) As Boolean '執行無返回的SQL語句
On Error GoTo ErrorHandler
Dim CN As ADODB.Connection
Dim CMD As New ADODB.Command
Set CN = Connect()
If (CN Is Nothing) Then
GoTo ErrorHandler
End If
CMD.ActiveConnection = CN
CMD.CommandText = strSQL
CMD.CommandType = adCmdText
CMD.Execute
ExcuteCmd = True
Set CN = Nothing
Set CMD = Nothing
Exit Function
ErrorHandler:
ExcuteCmd = False
strerror = Err.Description
Set CN = Nothing
Set CMD = Nothing
End Function
問題補充:
非常感謝二位提供的代碼.我用"有始有終"朋友的代碼.基本實現了SQL資料庫的連接,但我還想請教一下.
用你的QueryExt函數返回資料庫後,是不是沒有斷開與資料庫的連接?如果在多用戶系統上,這樣一直連接著資料庫,是否會存在資料庫負荷問題?
請加我的QQ:2303507
希望在以後能得到你們的幫助!
提問時間: 2006-06-15 21:36:59
回答:有始有終
學長
6月16日 11:38 '數據源信息常量
Public Const conn As String = "Provider=SQLOLEDB.1;Password=sa;User ID=sa;Initial Catalog=StudentFiles;Data Source=localhost;"
'一次執行connect操作可以訪問資料庫的次數
Public Const CONNECT_LOOP_MAX = 10
'== 標記資料庫是否連接 ==
Private IsConnect As Boolean
'== 標記執行Connect()函數後,訪問資料庫的次數 ==
Private Connect_Num As Integer
Private cnn As ADODB.Connection '連接資料庫的Connection對象
Private rs As ADODB.Recordset '保存結果集的Recordset對象
'連接資料庫
Private Sub Connect()
'如果連接標記為真,則返回。否則會出錯
If IsConnect = True Then
Exit Sub
End If
'關鍵New用於創建新對象cnn
Set cnn = New ADODB.Connection
'設置連接字元串ConnectionString屬性
cnn.ConnectionString = conn
'打開到資料庫的連接
cnn.Open
'判斷連接的狀態
If cnn.State <> adStateOpen Then
'如果連接不成功,則顯示提示信息,退出程序
MsgBox "資料庫連接失敗"
End
End If
'設置連接標記,表示已經連接到資料庫
IsConnect = True
End Sub
'斷開與資料庫的連接
Private Sub Disconnect()
Dim Rc As Long
'如果連接標記為假,標明已經斷開連接,則直接返回
If IsConnect = False Then
Exit Sub
End If
'關閉連接
cnn.Close
'釋放cnn
Set cnn = Nothing
'設置連接標記,表示已經斷開與資料庫的連接
IsConnect = False
End Sub
'使用Connect_Num控制資料庫連接
Public Sub DB_Connect()
Connect_Num = Connect_Num + 1
Connect
End Sub
Public Sub DB_Disconnect()
If Connect_Num >= CONNECT_LOOP_MAX Then
Connect_Num = 0
Disconnect
End If
End Sub
'強制關閉api方式訪問的資料庫,計數器復位
Public Sub DBapi_Disconnect()
Connect_Num = 0
Disconnect
End Sub
'執行資料庫操作語句
Public Sub SQLExt(ByVal TmpSQLstmt As String)
'創建Command對象cmd
Dim cmd As New ADODB.Command
'連接到資料庫
DB_Connect
'設置cmd的ActiveConnection屬性,指定與其關聯的資料庫連接
Set cmd.ActiveConnection = cnn
'設置要執行的命令文本
cmd.CommandText = TmpSQLstmt
' MsgBox TmpSQLstmt
'執行命令
cmd.Execute
'清空cmd對象
Set cmd = Nothing
'斷開與資料庫的連接
DB_Disconnect
End Sub
'執行資料庫查詢語句
Public Function QueryExt(ByVal TmpSQLstmt As String) As ADODB.Recordset
'創建Recordset對象rst
Dim rst As New ADODB.Recordset
'連接到資料庫
DB_Connect
'設置rst的ActiveConnection屬性,指定與其關聯的資料庫連接
Set rst.ActiveConnection = cnn
'設置游標類型
rst.CursorType = adOpenDynamic
'設置鎖定類型
rst.LockType = adLockOptimistic
'打開記錄集
rst.Open TmpSQLstmt
'返回記錄集
Set QueryExt = rst
End Function
E. 馬婧的主要論著:
1 Jing Ma, Zheng Li, Bin Wang, Shunzhao Sui,Mingyang Li. Cloning and Expression of an Expansin Gene in Chimonanthus praecox Flower and Its Response to Ethephon. Hortscience, 2012
2 馬婧,孫文婷,王晶,眭順照,李名揚. 蠟梅胚胎晚期豐富蛋白基因CpLEA 的克隆及表達分析.園藝學報,2014,41(8):1663-1672
3馬婧,劉群,王曉斌,眭順照,李名揚. 2個蠟梅非特異性脂轉移蛋白啟動子的克隆及其在煙草中的瞬時表達分析. 植物遺傳資源學報,2012,4(13):601-6084馬婧,王斌,代銀,眭順照,李名揚.金蕎麥FdLAR基因的克隆和表達分析. 葯學學報.,2012,7(47)953-961:5 馬婧,祝欽瀧,郭鐵英,劉光德,眭順照,李名揚. 金蕎麥MYB轉錄因子基因FdMYBP1的克隆及分子特徵分析. 中國中葯雜志,2009,34(17):2155-2159
6 Daofeng Liu, Shunzhao Sui, Jing Ma, Zhineng Li, Yulong Guo, Dengpan Luo, Jianfeng Yang, Mingyang Li*. Transcriptomic analysis of flower development in wintersweet (Chimonanthus praecox). PLOS one 9(1): e86976. doi:10.1371/journal.pone.0086976
7 Daofeng Liu, Jing Ma, Jianfeng Yang, Tien V Nguyen, Huamin Liu, Renwei Huang, Shunzhao Sui*, Mingyang Li*. Mining SSR and SNP markers in transcriptomic database of wintersweet (Chimonanthus praecox). Hortscience. 2014.49(11):1360-1364
8 Jianghui Luo, Daofeng Liu, Jing Ma, Weiting Men, Lu Fan, Yu Bai, Mingyang Li*, Shunzhao Sui*. Effects of hormonal treatments on postharvest characteristics in cut wintersweet flowers (Chimonanthus praecox). (submitted)9 Shunzhao Sui, Jianghui Luo, Jing Ma, Qinlong Zhu, Xinghua Lei, and Mingyang Li. Generation and Analysis of Expressed Sequence Tags from Chimonanthus praecox (Wintersweet) Flowers for Discovering Stress-responsive and Floral Development Related Genes[J]. Comparative and Functional Genomics, 2012. dio:10.1155/2012/134596
10 Yulong Guo, Yao Han, Jing Ma, Huiping Wang, Xianchun Sang, Mingyang Li. Undesired Small RNAs Originate from an Artificial microRNA Precursor in Transgenic Petunia (Petunia hybrida). PLoS ONE , 第9卷,第6期,e98783, doi:10.1371/journal.pone.0098783, 2014
11 羅江會,馬婧,劉道鳳,楊建峰,門維婷,萬超,眭順照,李名揚. 乙烯對蠟梅切花開放衰老及乙烯受體基因表達的影響. 植物生理學報,2015,51 (2): 253-258
12 李政,馬婧,眭順照,李名揚.不同脫落力下蠟梅花梗CpEXP1基因的表達與擴張蛋白活性.植物生理學報,2013,49(11):1255-126012 張倩,馬婧,何婧,李名揚,眭順照. 中國蘆薈AlDREB2基因的克隆及其脅迫表達. 園藝學報,2009,36(11):1659-166613 劉群,馬婧,祝欽瀧,余國武,張倩,眭順照, 李名揚. 蠟梅非特異性脂轉移蛋白基因nsLTP家族3個成員的分子特徵及非生物脅迫應答分析. 農業生物技術學報,2009,17(6): 1027-103414 眭順照,馬婧,李艷冬,祝欽瀧, 李名揚. 提取金蕎麥愈傷組織總RNA的一種有效方法. 中國中葯雜志,2011,36(6):751-75415 胡雨晴,孫文婷,馬婧,曹鑫,李名揚,眭順照. 蠟梅熱激蛋白基因CpHSP1的克隆與表達分析[J]. 林業科學,2011, 47(5): 163-16716 眭順照,李琳莉,祝欽瀧,馬婧,李名揚. 蠟梅凝集素基因克隆及其對蚜蟲、蛞蝓抗性分析[J].中國農業科學, 2011, 44 (2): 358-368科研獲獎:
蠟梅花器官發育及其抗寒性形成的分子基礎研究;重慶市自然科學獎三等獎,第三完成人,2013年6月
其他獲獎:
西南大學第十屆教師課堂教學比賽,三等獎
F. basic,base,basis的區別
一、詞性不同
basic是形容詞,basis是名詞,base可以作為動詞,也可以作為名詞。
二、含義不同
basic的基本含義包括:
1、基礎的,基本的,根本的。
2、最簡單的,最初級的。
例句:basic salary/pay:基本工薪/底薪。
basis的基本含義是基礎,根據,基本原理。
例句:on the basis of :在...的基礎上/根據...
base作為名詞的基本意思是把基地設在.../以...為基地
base作為名詞的基本意思是:
1、底部,根基,基礎(指某種東西的根部,如大樓的地基等)。
2、基礎。
3、基地/總部(公司的)。
4、(軍事的)基地。
toward the end of的基本含義是朝某事的終點前進。
towards (介詞)the end of的基本含義是到...結束的時候。
三、使用范圍不同
basic用於形容某個初級的或者基礎的事情或者層次。
base用於表示某種基礎或者基本的道理和原理。
base主要用於代指某種建築的根基或者某個基地。
G. foundation、base和basis的區別
foundation、base和basis的區別:含義不同、用法不同、側重點不同。
一、含義不同
foundation
n. 根基;創建;基金(會)。
base
n. 底部;基地;基數;基線;(棒球)壘;[化]鹼。
vt. 以 ... 作基礎。
adj. 卑鄙的;不道德的。
basis
n.基礎;根據;基底。
二、用法不同
foundation
作名詞含有「基礎」之意。foundation用於具體意義時,側重指堅固結實的建築物的基礎或地基;用作比喻意義時,與basis基本相同。
How long will it take to finish digging the foundations?
挖地基大概需要多長時間完成呢?
He laid the foundation of his success by study and hard work.
他通過學習和努力工作為成功打下了基礎。
base
base的基本意思是「底座,基礎」,一般指具體有形的事物的底部、基座等;也可用來比喻理論的基礎或討論的根據等。base還可作「基地」解,多指軍事或工業基地。
base是可數名詞,其前可加a或the,在句中可作主語或賓語。
base用作動詞是「把…建立在,以…為基礎」的意思,指人們依據一定的客觀規律或自己的親身體驗而得出的一定結論。base常用於非物質結構的基礎,這個基礎可以是物質的,也可以是非物質的。
base是及物動詞,常與on連用,作「使建立在…基礎上」解。常用於被動結構。
base常指有形的基礎,側重指構成或支撐某一具體物體的基礎,也可指軍事基地或用作比喻意義。而basis常指無形的基礎,主要用作抽象或引申意義;
military base是指軍事基地,economic basis and superstructure是指經濟基礎和上層建築;
base和basis的復數形式都是bases,前者讀作['beisiz],後者讀作['beisi:z]。
I found a small leaf at the base of the flower.
我在那朵花的底部發現一片小葉。
Our mission was over, and went back to our base.
我們的任務結束了,我們返回了基地。
basis
basis的基本意思是指人們採取某一行動的「原因;緣由」,也可指人們組織、安排和操作某事的「基準;准則;方式」,作此二解時basis是單數名詞。basis還可指事物的「主要成分,最重要的部分」,由此事物得以形成、開始和發展,作此解時basis是可數名詞,常用於單數形式,有時也用作不可數名詞。
在類似on a whole-time basis,on an international basis等表達方式中,冠詞a或an不能省略;
on a/an ... basis的表達方式顯得較為繁瑣,如They work whole-time較They work on a whole-time basis更為簡潔。
His research formed the basis of his new book.
他的研究成果是他這本新書的基礎。
We drew this conclusion on the basis of experiments.
我們是在試驗的基礎上得出這個結論的。
三、側重點不同
foundation
作名詞含有「基礎」之意。foundation用於具體意義時,側重指堅固結實的建築物的基礎或地基;用作比喻意義時,與basis基本相同。
base
作名詞含有「基礎」之意。base側重指構成或支撐某一具體物體的基礎,也可指軍事基地或用作比喻意義。
basis
作名詞含有「基礎」之意。basis主要用作抽象或引申意義。
H. bloom和flower之間的區別
n.
花
花開的狀態; 開花期
[只用單] 青春; 興旺時期
果實的粉衣; 粉霜; 微茸層; 菌絨
(面部)紅潤
光圈, 暈, 圖象發暈[浮散]; 模型表面沾污
大鋼坯, 鋼錠, 鐵[鋼]塊; 大方坯
黃色鞣化酸
(石油產品、松香油等的)熒光
華(常見的象熒光一樣的礦物)
(紡織物等染後出現的)光澤
蛋殼的表皮
酒特有的香味
水花區
油霜
新鑄硬幫上的粒面或粉面; 清漆膜上的雲狀物
保護得很好的家畜毛皮; 巧克力的灰白色
火花區
The gardens are all in bloom.
春色滿園。
They are in the bloom of youth.
他們處在青春時代。
These fruits have a bloom upon them.
這些水果有粉衣。
【詞性變化】
bloom
soft金山king
vt.
使繁榮; 使開花
使艷麗
在(光潔、清亮物體)上產生一片雲霧狀的區域
起暈; 浮散; (給透鏡)塗層
初軋; 把...軋成鋼坯
Their breath bloomed the frosty pane.
他們呼出的水氣, 在冰冷的窗玻璃上形成一層霧。
bloom
soft金山king
vi.
開花
進入青春時代
繁盛
發亮; 突然激增
Subscription selling bloomed splendidly.
訂閱銷售量激增。
【繼承用法】
bloom-base
n.
支柱座
bloom-blank
n.
(軋制軌梁等鋼材用的)大異形坯
【習慣用語】
be out of bloom
花已落
come into bloom
開花
cut off in its bloom
於旺盛時加以摧殘
in full bloom
花盛開著
take the bloom off sth.
使某物失去光采顯得陳舊
the bloom of the plum
[廢]嬌媚, 鮮艷
the blue of the plum
[廢]嬌媚, 鮮艷
bloom into
發育為, 成長為
bloom of youth
青春; 風華正茂
bloom out
風化
【特殊用法】
algal bloom
藻花
arsenic bloom
砷華; 三氧化二砷
chocolate bloom
巧克力表面發白霜
cobalt bloom
【礦】鈷華,
crater bloom
凹陷霜花; 永久霜花(漆病)
crumb bloom
麵包瓤的光澤
crystalline bloom
起霜; (結)晶霜(漆病)
cylindrical bloom
大圓鋼坯
fat bloom
(巧克力的)表面出油發白霜; [俗]反霜
lubricant bloom (=grease mark)
油跡
nickel bloom
【礦】鎳華
oil bloom
油霜(油的熒光)
perpetual bloom
連續開花, 四季開花
phytoplankton blooms
浮游植物增殖
plankton bloom
浮游生物(大量繁殖引起的)水花
puddled bloom
攪煉爐坯鐵
rose bloom
薔薇花
rust bloom
銹霜
salt bloom
鹽花(假霉)
scarfed bloom
經火焰清理的初軋方坯
seamless bloom
無縫鋼管坯
shaped bloom
異形初軋坯, 異形方坯
steel bloom
鋼坯
sulfur bloom
硫黃華; 硫霜
unreheated bloom
不再熱的初軋方坯
water bloom
【植】水花
white bloom
白花; 白翳(含硫化合物在煤油燈上沉積)
zinc bloom
鋅華; 氧化鋅
近義詞:blossom flourish flower glow thrive
反義詞:fade shrivel wither